Hướng Dẫn Cài Windows 7 Bằng Usb Bằng Hình Ảnh
Hướng Dẫn Cài Đặt Windows 10 Bằng Usb Từ A
Hướng Dẫn Thiết Lập Khởi Động Từ Hiren Boot – Thủ Thuật Công Nghê – Thủ Thuật Máy Tính, Thủ Thuật Tin Học, Phần Mềm Hay
Hướng Dẫn Tạo Usb Boot Mini Windows 8
Hướng Dẫn Cách Kiểm Tra, Sửa Lỗi Bad Sector Ổ Cứng
—
HƯỚ NG BẢN ARDUINO NG DẪ DẪN SỬ SỬ DỤNG DỤNG CƠ BẢN
TP.HCM, Tháng 5, Năm 2014.
MỤC LỤC: Lờ i nói đầu. đầu. Chương 1: Tổng Tổng quan về về Arduino Uno. ……………………… …………………………………….. ……………………………. …………………………. ………….. 1 1. Tổng quan. ……………………………. …………………………………………… ……………………………. ……………………………. …………………………….. ………………………. ………. 1 …………………………………………… ……………………………. ……………………………. …………………. ….. 2 2. Sơ đồ chân đồ chân củ của Arduino. ……………………………. Chương 2: Cài đặt chương trình Arduino IDE và Driver cho Arduino ………………….. ………………….. 4 …………………………………………… ……………………………. …………………. ….. 4 1. Cài đặt chương trình Arduino IDE ……………………………. …………………………………………. ……………………………. ……………………………. …………………………….. ……………………. ……. 5 2. Cài đặt đặt Driver ………………………….. …………………………………………… ……………………………. ……………………………. …………………………….. ……………………. ……. 7 3. Arduino IDE ……………………………. Chương 3: Hướ ng ng dẫn dẫn cài đặt đặt bả bản mô phỏ phỏng Arduino trên Proteus…………………….. ……………………. 11 Chương 4: Giao tiếp tiế p Arduino vớ vớ i mộ một số số linh kiện kiện điện điện tử tử . …………………………… ………………………………….. ……..13 …………………………………………. ……………………………. ……………………………. ……………….. … 13 1) Project 1: Led nhấ nhấp nháy. ………………………….. 2) Project 2 : Đèn sáng khi nhấn nhấ n phím. ………………………….. …………………………………………. ……………………………. ……………….. … 18 …………………………… 21 3) Project 3 : Led sáng dầ d ần từ từ led led 1 đến led 10 và ngượ c lạ lại. ……………………………. 4) Project 4 : Led sáng dầ d ần từ từ led led 1 đến led 10 và ngượ c lạ lại thờ thờ i gian delay thay đổi đượ c. ………………………………………….. ……………………………. ……………………………. ……………………………. ……………………………. ……………….. … 24 c. …………………………… ……………………………………….. ………….. 27 5) Project 5: Điều Điều khiể khiển tốc tốc độ động cơ bằng bằng PWM. …………………………… Điề u khiển bằng L293D. ……………………………. …………………………………………… …………………. ….. 31 6) Project 6 : Điều khiển động cơ bằng …………………………………………… …………………. ….. 34 7) Project 7: Giao tiế ti ếp Arduino vớ vớ i LCD 16×2. ……………………………. …………………………………………… …………………………….. ………………….. ….. 47 8) Project 8: Giao tiế ti ếp vớ vớ i máy tính. ……………………………. 9) Project 9. Đo nhiệt độ môi trườ ng ng dùng LM35D hiể hiển thị thị LCD và Serial …………………………………………… ……………………………. ……………………………. ……………………………. ……………………………. ……………….. … 49 Monitor. ……………………………. ……………………………………….. …………..54 10) Project 10: Giao tiế ti ếp Arduino vớ vớ i Servo motor. …………………………… Tài liệ liệu tham khả khảo. …………………………… ………………………………………….. ……………………………. ……………………………. …………………………….. ………………….. ….. 56
Lờ i Nói Đầ Đầu. u. Arduino đã và đang đượ c sử dụng r ất r ộng rãi trên thế giớ i,i, và ngày càng chứng tỏ
đượ c sức mạnh của chúng thông qua vô số ứng dụng độc đáo của ngườ i dùng trong cộng đồng nguồn mở . Arduino thực sự đã gây sóng gió trên thị trường ngườ i dùng trên toàn thế giới trong vài năm gần đây , số lượng ngườ i dùng cực lớn và đa dạng với trình độ tr ải r ộng từ bậc phổ thông lên đến đạ i học đã làm cho ngay cả những ngườ i tạo ra chúng phải ngạc nhiên về mức độ phổ biến.Tuy nhiên tại Việt Nam Arduino vẫn còn chưa đượ c biết
“HƯỚ NG NG DẪ DẪN SỬ SỬ DỤNG DỤNG CƠ BẢN BẢN ARDUINO”. ARDUINO”. Trong tài liệu này cung cấ p cho bạn ng kiến thức cơ b bản nhất về Arduino cũng như các ứng dụng thực tế của nó. đọc một lượ ng Tài liệu gồm có các nội dung sau:
Chương 1: Tổ ng ng quan về Arduino Arduino Uno. Chương 2: Chương 2: Cài đặt chương trình Arduino IDE và Driver cho Arduino. Chương 3: Hướ ng ẫn cài đặt bản mô phỏng Arduino trên Proteus. ng d ẫn Chương 4: Giao tiế p Arduino vớ i một số linh ử. linh kiện điện t ử Khi biên soạn, tác giả đã tham khảo một số tài liệu nướ c ngoài để tài liệu vừa đảm bảo về mặc nội dung vừa có thể tiế p cận đượ c vớ i bạn đọc. Khi viết tác giả đã có gắng để tài liệu đượ c hoàn chỉnh nhất song chắc chắn không tránh khỏi sai sót, vì v ậy r ất mong nhận đượ c sự góp ý của bạn đọc. Mọi ý kiến đóng góp xin liên hệ: = {4, 5, 6, 7, 8, 9, 10, 11, 12, 13}; int direction = 1; int currentLED = 0; void setup() { for (int x=0; x
HỌC VIỆ N HÀNG KHÔNG
SV: NGUYỄ N TRUNG TÍN
21
void loop() { for (int x=0; x
if (currentLED == 9) {direction = -1;} if (currentLED == 0) {direction = 1;} delay(500); }
Giải thích chương trình. Trong Project này chúng ta s ử dụng 10 chân digital để điều khiển 10 led, để cho
ở đây tôi sử dụng mảng 1 chiều gồm 10 phần t ử trong đó chứa chương trình ngắn gọn thì ở đâ 10 vị trí chân led mà ta s ử dụng trong project byte ledPin, ntLED], HIGH);
Vì ta đã khai báo currentLED = 0 nên mãng sẽ truy xuất phần tử đầu tiên trong mãng có giá tr ị là 4 vì thế led ở v vị trí chân digital số 4 sẽ sáng. currentLED += direction;
Tăng currentLED lên 1 đơn vị ( direction =1 ). Vòng lặ p tiế p theo sẽ là led ở chân chân digital 5 sáng và cứ như thế cho đến led ở chân chân số 13 sáng, thì lúc này currentLED == 9, câu lệnh “ if (currentLED == 9) {direction = -1;} ” sẽ thực hiện và led sẽ sáng ngượ c lại từ led 10 xuống led thứ 1. Hai câu lệnh : if (currentLED == 9) {direction = -1;} if (currentLED == 0) {direction = 1;}
dùng để quy định chiều sáng của led là tăng dần hay giảm dần. Nếu là Led th ứ 10 sang thì tiế p theo sẽ giảm xuống led thứ 9 và ngượ c lại nếu led thứ 0 sang thì chu k ỳ tiế p theo led 1 sẽ sáng.
HỌC VIỆ N HÀNG KHÔNG
SV: NGUYỄ N TRUNG TÍN
23
4) Project 4 : Led sáng d ần từ led ừ led 1 đến led 10 và ngượ c lại thờ i gian c. delay thay đổi đượ c.
Sơ đồ ơ đồ mạch : Trong project này hoàn toàn giống project 3 chỉ thêm một biến tr ở dùng để điều ch chỉnh ở dùng
thờ i gian delay cho chương trình
c. Hình 24: Led sáng dần từ led 1 đến led 10 thời gian delay thay đổi đượ c.
Code chương trình. int ledPin = {
SV: NGUYỄ N TRUNG TÍN
38
B01110, B00000 };
ữ “ơ” byte char2 = {
ữ “ơ” byte sad[8] = { t ạo chữ “ơ” B01110, B00001, B00010, B01110, B10001, HỌC VIỆ N HÀNG KHÔNG
SV: NGUYỄ N TRUNG TÍN
45
B10001, B01110, B00000 };
Sau khi đã tạo đượ c ký tự mong muốn ta sử dụng câu lệnh: lcd.createchar(num,data);
Trong đó: num: là các chữ số tứ 0 đến 7. data: là các mãng chứa ký tự của chúng ta.
Câu lệnh này sẽ gán ký tự ta đã tạo vào một chữ số. lcd.createChar(0, lcd.createChar(0, happy); lcd.createChar(1, lcd.createChar(1, sad);
Để hiển thị một ký tự ra màn hình ta dùng câu lệnh lcd.write(data). Hiển thị chữ “ô” ra màn hình LCD. lcd.write(byte(0));
Hiển thị chữ “ơ” ra màn hình LCD lcd.write(byte(1));
HỌC VIỆ N HÀNG KHÔNG
SV: NGUYỄ N TRUNG TÍN
46
8) Project 8: Giao ti ếp vớ i máy tính. Trong phần này tôi sẽ trình bày cách để giao tiế p giữa Arduino vớ i máy tính thông qua chuẩn giao tiế p nối tiế p không đồng bộ UART.
Điều khiển bật tắt bằng cách gửi lệnh từ máy tính.
Sơ đồ mạch:
ở Dùng cáp USB k ết nối Arduino vớ i máy tính. Led n ối vớ i chân 13 thông qua điện tr ở 220 ohm.
Code chương trình: int ledpin =13; void setup() { Serial.begin(9600); pinMode(ledpin,OUTPUT); pinMode(ledpin,OUTPUT); }
{
digitalWrite(ledpin,HIGH); digitalWrite(ledpin,HIGH); break; } case ‘0’: { digitalWrite(ledpin,LOW digitalWrite(ledpin,LOW); ); break; }}} HỌC VIỆ N HÀNG KHÔNG
SV: NGUYỄ N TRUNG TÍN
47
Giải thích chương trình: Serial monitor b ằng cách nhấ p Để có thể điều khiển đượ c led bật tắt chúng ta cần mở Serial vào biểu tượ ng ng
:
Hình 35: Serial Monitor. Trong chương trình ta cần chú ý tớ i các câu lệnh sau: Serial.begin(9600);
Câu lệnh này dùng để kiểm tra xem có dữ liệu truyền tớ i hay không. Ngoài ra Serial.available() còn tr ả về cho chúng ta số ký tự đã đượ c truyền tớ i Arduino HỌC VIỆ N HÀNG KHÔNG
SV: NGUYỄ N TRUNG TÍN
48
char setupled = Serial.read( Serial.read(); );
Khi dữ liệu đượ c truyền tớ i Arduino thì dữ liệu sẽ đượ c lưu vào bộ nhớ đệ ớ đệm. Chúng ta khai báo biến setupled vớ i ki ểu dữ liệu char và dùng hàm Serial.read() để truy suất dữ liệu trong bộ nhớ đệ ớ đệm và lưu vào trong nó. Như vậy ký tự đầu tiên trong chuỗi ký tự đượ c truyền tớ i sẽ đượ c gán vào setupled. Dùng hàm Switch-case để kiểm tra, nếu là “1” thì sáng led, nếu là “0” thì tắt led, các trườ ng ng hợ p còn lại thì không làm gì.
9) Project 9. Đo nhiệt độ môi trườ ng ng dùng LM35D hiển thị LCD và Serial Monitor.
Sơ đồ ơ đồ mạch.
Hình 36: giao tiế p vớ i LM35, LCD và Serial monitor.
Code chương trình: #include LiquidCrystal LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
HỌC VIỆ N HÀNG KHÔNG
SV: NGUYỄ N TRUNG TÍN
49
int scale = 1; int buttonPin=8;
SV: NGUYỄ N TRUNG TÍN
50
SV: NGUYỄ N TRUNG TÍN
51
Giải thích chương trình:
Tổng quan: chương trình sẽ kiểm ta mức điện áp ngõ ra của LM35 tương ứng v ớ i nhiệt độ của môi trườ ng ng hiển thị trên Lcd và Serial Monitor. Nhiệt độ của môi trườ ng ng đượ c tính bằng độ C và độ F, nếu nhấn phím thì sẽ thay đổi hiển thị là độ C hay độ F. Bắt đầu chương trình ta khai báo thư viện Lcd và định ngh ĩ a chân cũng như các biến cần dùng cho toàn bộ chương trình. #include LiquidCrystal LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
Trong hàm setup() chúng ta cần quan tâm tớ i câu lệnh: analogReference(INTERNAL);
Khai báo điện áp tham chiếu cho bộ chuyển đổi ADC bên trong Arduino Uno là 1,1V ( đây là giá tr ị điện áp tham chiếu nội mặc định của Arduino Uno). ng chúng ta cần lưu ý những điểm sau: Để tính toán đúng nhiệt độ môi trườ ng Bộ chuyển đổi ADC gồm 10 bit tức là 1024 mức. HỌC VIỆ N HÀNG KHÔNG
SV: NGUYỄ N TRUNG TÍN
52
Điện áp tham chiếu cho bộ chuyển đổi ADC là 1,1V. ng. Đối vớ i LM35 thì điện áp ngõ ra tuyến tính vớ i nhiệt độ của môi trườ ng. Hệ số chuyển đổi điện áp sang nhiệt độ là 10mV/10C = 0,01V/10C. Xây dựng công thức tính nhiệt độ. Ta biết: 1,1 volt (1100 mV) có 1024 mực biểu diễn, vậy 1 mức sẽ là 1,1/1024 (volt),
để chuyển đổi từ điện áp sang nhiệt độ thì ta chia tiế p cho 0,01V. Từ đây ta thấy cứ 1 mức chuyển đổi của ADC tương ứng vớ i
1,1
0
1024.0,01
C = 0.10742188 0C.
Như vậy chúng ta chỉ cần đọc giá tr ị đầu vào ở chân chân A0 (giá tr ị nằm trong khoảng 0 – 1023) và gán chúng cho biến integer sensor. int sensor = analogRead(0); analogRead(0);
Để tính ra nhiệt độ chính xác chúng ta nhân giá tr ị của sensor vớ i 0.10742188. Trong chương trình con celsius(int sensor) ta có câu lệnh: int temp = sensor* 0.1074188; 0.1074188;
Trong chương trình con fahrenheit(int sensor) ta có câu lệnh chuyển đổi từ độ C sang độ F là: float temp = ((sensor ((sensor * 0.1074188) 0.1074188) * 1.8)+32; 1.8)+32;
HỌC VIỆ N HÀNG KHÔNG
SV: NGUYỄ N TRUNG TÍN
53
10) Project 10: Giao ti ếp Arduino vớ i Servo motor.
ơ đồ mạch Sơ đồ
Hình 37: Giao tiế p vớ i Servo motor
Code chương trình. #include Servo servo1; void setup() { servo1.attach(5); servo1.attach(5); } void loop() { int angle = analogRead(0);
HỌC VIỆ N HÀNG KHÔNG
SV: NGUYỄ N TRUNG TÍN
54
servo1.write(angle); servo1.write(angle); delay(15); }
Giải thích chương trình: Khai báo thư viện cho Servo motor bằng câu lệnh. #include
Khai báo đối tượ ng ng có tên là servo1 Trong hàm setup() ta định ngh ĩ a chân cho Servo: servo1.attach(5) servo1.attach(5) ;
Chân số 5 của Arduino sẽ nối vớ i chân input của Servo motor.
Đọc giá tr ị điện áp của biến tr ở ở và và gán nó cho biến integer angle : int angle = analogRead(0); analogRead(0);
Giá tr ị đọc đượ c từ biến tr ở ở s sẽ nằm trong khoảng 0 đến 1023 và góc quay của Servo từ 00 đến 1800 ta sử dụng câu lệnh : angle=map(angle, angle=map(angle, 0, 1023, 0, 180);
ở sang sang góc quay tương ứng của Câu Lệnh này sẽ chuyển đổi từ giá tr ị của biến tr ở Servo. Để điều khiển góc quay của Servo ta dùng câu l ệnh: servo1.write(angle); servo1.write(angle);
HỌC VIỆ N HÀNG KHÔNG
SV: NGUYỄ N TRUNG TÍN
55
Tài liệu tham khảo.
Beginning Arduino – Mike McRoberts Arduino cookbook – Michael Michael Margolis http://arduino.cc http://blogembarcado.blogspot.com
HỌC VIỆ N HÀNG KHÔNG
SV: NGUYỄ N TRUNG TÍN
56
Android — Làm Cách Nào Để Cài Đặt Android Studio Trên Ubuntu?
Ảo Thuật Đoán Bài – Giải Mã Năng Lực Đặc Biệt Hay Chỉ Là Thủ Thuật?
Lỗi Cài Đặt Autocad 2007
Hướng Dẫn Cài Autocad 2007 Trên Wn 8 Pro
Tổng Hợp Key Cài Đặt Windows Xp