Tải bản đầy đủ (.pdf) (635 trang)

Tài liệu a z urduino uno cảm biến và hệ thống đo

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (33.17 MB, 635 trang )

<span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

<b><small>MỤC LỤC</small></b>

<b><small>A. GIỚI THIỆU VỀ ARDUINO ... 36 </small></b>

<b><small>I. ARDUINO LÀ GÌ? ... 38 </small></b>

<b><small>II. ARDUINO LÀM ĐƢỢC NHỮNG GÌ? ... 39 </small></b>

<b><small>III. SƠ LƢỢC VỀ ARDUINO UNO R3 ... 42 </small></b>

<b><small>1. Một số thông số kỹ thuật nhƣ sau ... 43 </small></b>

<b><small>2. Sơ đồ chân của Arduino Uno ... 44 </small></b>

<b><small>IV. SƠ LƢỢC BỘ KIT TỰ HỌC ARDUINO ... 46 </small></b>

<b><small>1. Giới thiệu sơ lƣợc về KIT TỰ HỌC:... 46 </small></b>

<b><small>2. Những lợi ích của Kit Tự Học Arduino ... 46 </small></b>

<b><small>3. Mục đích của bộ KIT TỰ HỌC: ... 47 </small></b>

<b><small>V. CÀI ĐẶT PHẦN MỀM IDE VÀ DRIVER ... 48 </small></b>

<b><small>1. Cài đặt phần mềm Arduino IDE ... 48 </small></b>

<small>a. Cài Java Runtime Environment (JRE) ... 48 </small>

<small>b. Cài đặt Arduino IDE:... 49 </small>

<b><small>2. Cài đặt Driver đối với Arduino Uno, mê ga, ... 51 </small></b>

<small>a. Cài đặt Driver ... 51 </small>

<small>b. Nạp chương trình cho Arduino Uno (mega tương tự): ... 53 </small>

<b><small>3. Cài đặt Driver đối với Nano ... 55 </small></b>

<small>a. Giới thiệu board arduino Nano. ... 55 </small>

<small>b. Cài đặt driver cho Arduino Nano ... 55 </small>

<small>c. Thông số kỹ thuật Arduino Nano: ... 56 </small>

<small>d. Nạp chương trình cho Arduino Nano: ... 57 </small>

<i><b><small>VI. GIỚI THIỆU PHẦN MỀM ( FRITZING) HỔ TRỢ VIỆC VẼ MẠCH NGUYÊN </small></b></i>

<b><small>LÝ 58 </small></b>

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

<b><small>1. Hàm nhập xuất Digital I/O ... 62 </small></b>

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

<small>b. Các phép cộng, trừ, nhân, chia trong Arduino ... 145 </small>

<small>c. Phép chia lấy dư% ... 146 </small>

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

<b><small>1. Cấu trúc chương trình Arduino ... 152 </small></b>

<b><small>2. Hướng dẫn add thư viện cho Arduino IDE ... 154 </small></b>

<b><small>II. BÀI HỌC LẬP TRÌNH ARDUINO TỪ CƠ BẢN ĐẾN NÂNG CAO ... 159 </small></b>

<b><small>1. Điều khiển LED đơn sáng nhấp nháy ... 159 </small></b>

<b><small>3. Điều khiển đèn giao thông ... 164 </small></b>

<small>Phần cứng cần chuẩn bị ( nếu sử dụng kit thì được tích hợp sẵn) ... 164 </small>

<small>Lắp mạch: ... 164 </small>

<small>Hình ảnh thực tế ... 165 </small>

<small>Code lập trình ... 165 </small>

<b><small>4. Điều khiển Rơ le 5Vdc 1, 2 kênh mức cao ... 167 </small></b>

<small>Giới thiệu thiệu chung ... 167 </small>

<small>Thông số kỹ thuật ... 167 </small>

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

<small>Phần cứng chuẩn bị ... 167 </small>

<small>Lắp mạch: ... 168 </small>

<small>Code chương trình ... 168 </small>

<small>Hình ảnh thực tế ... 169 </small>

<b><small>5. Điều khiển Công tắc tơ 3 pha ... 169 </small></b>

<small>Giới thiệu công tắc tơ 3 pha ... 169 </small>

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

<b><small>10. Lập trình hiển thị led 7 đoạn đơn ... 188 </small></b>

<small>Giới thiệu led 7 đoạn đơn:... 188 </small>

<small>Phần cứng chuẩn bị ... 189 </small>

<small>Lắp mạch( nếu các bạn đã có kit học thì đã lắp sẵn nút nhấn)... 190 </small>

<small>Lập trình ... 190 </small>

<b><small>11. Hiển thị chữ cái, số ra module 4 led 7 đoạn... 192 </small></b>

<small>Giới thiệu module 4 led 7 đoạn: ... 192 </small>

<small>Phần cứng chuẩn bị ... 193 </small>

<small>Lắp mạch( nếu các bạn đã có kit học thì đã lắp sẵn) ... 193 </small>

<small>Hình ảnh thực tế ... 194 </small>

<small>Lập trình ... 194 </small>

<b><small>12. Lập trình hiển thị module led ma trận 8x8 ... 196 </small></b>

<small>Giới thiệu module ma trận 8x8: ... 196 </small>

<small>Phần cứng chuẩn bị: ( tất cả được tích hợp trên Kit Tự Học) ... 196 </small>

<small>Lắp mạch( nếu các bạn đã có kit học thì đã lắp sẵn) ... 197 </small>

<small>Hình ảnh thực tế ... 197 </small>

<small>Lập trình ... 197 </small>

<b><small>13. Hiển thị chữ lên màn hình LCD16x02 ... 202 </small></b>

<small>Giới thiệu module LCD 16X02 ... 202 </small>

<small>Phần cứng chuẩn bị: ( tất cả được tích hợp trên Kit Tự Học) ... 202 </small>

<small>Lắp mạch( nếu các bạn đã có kit học thì chỉ việc nối dây) ... 203 </small>

<small>Hình ảnh thực tế ... 204 </small>

<small>Lập trình ... 204 </small>

<b><small>14. Kết hợp Module I2C với LCD16x02 ... 204 </small></b>

<small>Giới thiệu module I2C cho LCD ... 204 </small>

<small>Phần cứng chuẩn bị: ( tất cả được tích hợp trên Kit Tự Học) ... 205 </small>

<small>Lắp mạch( nếu các bạn đã có kit học thì chỉ việc nối dây) ... 205 </small>

<small>Lập trình ... 206 </small>

<small>Hình ảnh thực tế ... 206 </small>

<b><small>15. Đọc giá trị cảm biến quang trở hiển thị lên serial monitor. ... 207 </small></b>

<small>Giới thiệu cảm biến quang trở ... 207 </small>

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

<small>Phần cứng chuẩn bị: (được tích hợp trên Kit Tự Học) ... 208 </small>

<small>Lắp mạch( nếu các bạn đã có kit học thì chỉ việc nối dây) ... 208 </small>

<small>Hình ảnh thực tế ... 208 </small>

<small>Lập trình ... 209 </small>

<b><small>16. Đọc gái trị CB nhiệt độ LM35 hiển thị lên serial monitor. ... 210 </small></b>

<small>Giới thiệu cảm biến nhiệt độ LM35: ... 210 </small>

<small>Phần cứng chuẩn bị ... 211 </small>

<small>Lắp mạch: ... 211 </small>

<small>Hình ảnh thực tế ... 211 </small>

<small>Lập trình ... 211 </small>

<b><small>17. Đọc giá trị CB nhiệt độ DS18B20 hiển thị lên serial monitor. ... 212 </small></b>

<small>Giới thiệu cảm biến nhiệt độ DS 18B20: ... 212 </small>

<b><small>19. Đọc giá trị cảm biến mƣa hiển thị lên serial monitor. ... 218 </small></b>

<small>Giới thiệu cảm biến mưa ... 218 </small>

<small>Phần cứng chuẩn bị ... 219 </small>

<small>Lắp mạch ... 219 </small>

<small>Lập trình ... 219 </small>

<small>Hình ảnh thực tế ... 220 </small>

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

<small>Kết quả hiển thị lên Serial monitor ... 224 </small>

<b><small>21. Đọc giá trị cảm biến độ ẩm đất hiển thị lên LCD16x02 ... 225 </small></b>

<small>Giới thiệu cảm biến độ ẩm đất: ... 225 </small>

<small>Kết quả hiển thị lên Serial monitor ... 228 </small>

<b><small>22. Đọc giá trị CB dò line hiển thị lên serial monitor và LCD. ... 228 </small></b>

<small>Giới thiệu cảm biến dò line ... 228 </small>

<small>Kết quả hiển thị lên Serial monitor ... 232 </small>

<b><small>23. Đọc giá trị điện áp khi điều chỉnh biến trở hiển thị lên serial ... 233 </small></b>

<small>Giới thiệu về biến trở ... 233 </small>

<small>Phần cứng chuẩn bị: (bộ kit đã tích hợp sẵn biến trở 10K) ... 233 </small>

<small>Lắp mạch ... 233 </small>

<small>Lập trình ... 234 </small>

<small>Hình ảnh thực tế ... 235 </small>

<small>Kết quả hiển thị lên Serial monitor ... 235 </small>

<b><small>24. Hiển thị thời gian thực (DS1307) lên LCD và serial monitor. ... 236 </small></b>

<small>Giới thiệu về module DS1307 ... 236 </small>

<small>Phần cứng chuẩn bị: (bộ kit đã tích hợp sẵn biến trở 10K) ... 237 </small>

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

<b><small>25. Hiển thị tốc độ đo bằng Encoder quay lên LCD. ... 241 </small></b>

<small>Giới thiệu về module Encoder quay: ... 241 </small>

<b><small>26. Cài đặt và hiển thị nhiệt độ, độ ẩm (DTH11) ... 247 </small></b>

<small>Giới thiệu về giao tiếp I2C ... 247 </small>

<small>Thông số kỹ thuật DHT11 ... 248 </small>

<small>Phần cứng chuẩn bị: (bộ kit đã tích hợp sẵn ) ... 248 </small>

<small>Lập trình ... 249 </small>

<small>Hình ảnh thực tế ... 252 </small>

<b><small>27. Điều khiển động cơ servo SG90 ... 252 </small></b>

<small>Giới thiệu về động cơ servo SG90 ... 252 </small>

<small>Phần cứng chuẩn bị: (bộ kit đã tích hợp sẵn ) ... 253 </small>

<small>Lắp mạch: ... 254 </small>

<small>Lập trình ... 254 </small>

<small>Hình ảnh thực tế ... 255 </small>

<b><small>28. Điều khiển động cơ bước stepper 28BYJ-48 ... 256 </small></b>

<small>Giới thiệu về động cơ bước stepper 28BYJ-48 ... 256 </small>

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

<small>Lập trình ... 262 </small>

<b><small>30. Điều khiển động cơ bằng module L298n: ... 265 </small></b>

<small>Giới thiệu về Module L298 ... 265 </small>

<small>Thông số kỹ thuật ... 265 </small>

<small>Phần cứng chuẩn bị: (bộ kit đã tích hợp sẵn ) ... 266 </small>

<small>Lắp mạch. ... 266 </small>

<small>Lập trình ... 266 </small>

<b><small>31. Lập trình module Wifi ESP8266 V1 bằng Uno R3 ... 268 </small></b>

<small>Giới thiệu về module Wifi ESP8266 V1: ... 268 </small>

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

<small>Lắp mạch: ... 292 </small>

<small>Lập trình cho Arduino: ... 293 </small>

<small>Viết app điều khiển thiết bị điện bằng Bluetooth trên điện thoại Andriod: ... 294 </small>

<b><small>40. Sử dụng IC Max7219 để điều khiển led ma trận 8x8 ... 296 </small></b>

<small>Lập trình app cho điện thoại Android: ... 303 </small>

<b><small>43. Làm game với led ma trận 8x8 Max7219 ... 304 </small></b>

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

<small>Lắp mạch: ... 309 </small>

<small>Lập trình ... 309 </small>

<small>Hình ảnh thực tế ... 310 </small>

<b><small>45. Điều khiển thiết bị bằng module enthernet shiled ... 311 </small></b>

<small>Giới thiệu về enthernet shiled: ... 311 </small>

<small>Lập trình app Inventor cho điện thoại android ... 320 </small>

<b><small>48. Điều khiển hiệu ứng RGB LED WS2812b. ... 320 </small></b>

</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">

<small>Giới thiệu rơ le bán dẫn SSR: ... 325 </small>

<small>Thông số kĩ thuật: ... 326 </small>

<small>Lắp mạch: ... 326 </small>

<small>Lập trình cho arduino: ... 327 </small>

<b><small>D. IOT ( Internet Of Things ) ... 328 </small></b>

<b><small>I. Khái niệm Internet Of Things ( IOT) là gì? ... 328 </small></b>

<b><small>1. Khái niệm IOT ... 328 </small></b>

<b><small>2. Những ứng dụng thực tế trong cuộc sống ... 328 </small></b>

<b><small>3. ESP8266 dòng chip đƣợc sử dụng phổ biến nhất hiện nay trong IOT ... 329 </small></b>

<b><small>4. Module và Board phát triển của ESP8266 ... 330 </small></b>

<b><small>5. Giới thiệu về module ESP 12E( NodeMCU V1) ... 331 </small></b>

<b><small>6. Lập trình ESP 12E bằng Arduino IDE ... 332 </small></b>

<small>Giới thiệu về ESP826612E: ... 332 </small>

<small>Chuẩn bị phần cứng ... 332 </small>

<small>Cài đặt phần mềm arduino IDE và thƣ viện cho esp8266 ... 332 </small>

<small>Hướng dẫn nạp chương trình cho ESP8266 12E: ... 335 </small>

<small>Hình ảnh thực tế ... 336 </small>

<b><small>II. Bài học mẫu cơ bản lập trình cho ESP12E ... 337 </small></b>

<b><small>1. Bật tắt led theo ý muốn bằng esp8266 12E ... 337 </small></b>

</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">

<small>Sau khi upload code ta mở cổng serial monitor và thingspeak ... 350 </small>

<b><small>7. Điều khiển thiết bị điện bằng webserver ... 350 </small></b>

</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">

<b><small>D. HỌC LẬP TRÌNH ARDUINO THÔNG QUA DỰ ÁN ... 371 </small></b>

<b><small>1. Ðo và hiển thị điện áp DC ( 0 – 30Vdc) ... 371 </small></b>

</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">

<small>Lắp mạch nguyên lý: ... 426 Code chương trình ... 427 Cài đặt app Blynk: ... 429 Hình ảnh thực tế ... 433 </small>

<b><small>13. Thiết kế xe 2 bánh tự cân bằng sử dụng board ardunio ... 433 </small></b>

<small>Mục tiêu: ... 433 Phần mền cần chuẩn bị ... 433 Phần cứng cần chuẩn bị... 433 Lắp mạch nguyên lý: ... 436 Code chương trình: (code hồn chỉnh link kèm theo) ... 436 Hình ảnh thực tế: ( bánh xe đƣợc thay loại có ma sát tốt hơn ) ... 438 </small>

<b><small>14. Thiết kế mơ hình hẹn giờ bật tắt thiết bị sử dụng module DS1307 và arduino. 439 </small></b>

<small>Mục tiêu: ... 439 Phần mền cần chuẩn bị ... 439 Phần cứng cần chuẩn bị... 439 Lắp mạch nguyên lý: ... 439 Hình ảnh thực tế ... 445 </small>

<b><small>15. Thiết kế mơ hình xe 4 bánh diều khiển bằng sóng Wifi sử board NodeMCU và app Blynk ( công cụ Joystick ) ... 445 </small></b>

<small>Mục tiêu: ... 445 Phần mền cần chuẩn bị ... 445 Phần cứng cần chuẩn bị... 445 Lắp mạch nguyên lý: ... 445 Code chương trình ... 446 </small>

<b><small>16. Thiết kế mơ hình xe robot 3 bánh tự hành sử dụng board ardunio ... 452 </small></b>

<small>Mục tiêu: ... 452 </small>

</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">

<b><small>17. Ðiều khiển góc quay động cơ buớc bằng nút nhấn sử dụng board arduino .. 459 </small></b>

<small>Mục tiêu: ... 459 Phần mền cần chuẩn bị ... 459 Phần cứng cần chuẩn bị... 459 Lắp mạch nguyên lý: ... 459 Code chương trình ... 460 Hình ảnh thực tế ... 462 </small>

<b><small>18. Thiết kế xe robot 4 bánh điều khiển bằng giọng nói sử dụng board arduino. 463 </small></b>

<small>Mục tiêu: ... 463 Phần mền cần chuẩn bị ... 463 Phần cứng cần chuẩn bị: ( Tuong tự với xe cấp dộ 1 ) ... 463 Lắp mạch nguyên lý: ... 463 Lắp mơ hình: tương tự như xe robot 4 bánh ở trên ... 465 </small>

<b><small>19. Thiết kế mơ hình mở cửa tự dộng sử dụng module RC522 và board arduino ( nhà thông minh) ... 468 </small></b>

<small>Mục tiêu: ... 468 Phần mền cần chuẩn bị ... 468 Phần cứng cần chuẩn bị... 468 Lắp mạch nguyên lý: ... 468 Code chương trình ... 469 </small>

<b><small>20. Thiết kế mơ hình hiển thị giờ, nhiệt dộ và dộ ẩm lên module led matrix 32x8 sử dụng board arduino ... 474 </small></b>

<small>Mục tiêu: ... 474 Phần mền cần chuẩn bị ... 474 Phần cứng cần chuẩn bị... 474 Lắp mạch nguyên lý: ... 474 Code chương trình ... 475 Hình ảnh thực tế ... 480 </small>

<b><small>21. Thiết kế mô hình hẹn giờ bật tắt thiết bị điện sử dụng module DS3231 và arduino ... 481 </small></b>

<small>Mục tiêu: ... 481 </small>

</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="24">

<small>Phần mền cần chuẩn bị ... 481 Phần cứng cần chuẩn bị... 481 Lắp mạch nguyên lý: ... 481 Code chương trình ... 482 Hình ảnh thực tế ... 486 </small>

<b><small>22. Thiết kế mơ hình cài đặt và hiển thị nhiệt độ sử dụng cảm biến PT100 và board arduino ... 486 </small></b>

<small>Mục tiêu: ... 486 Phần mền cần chuẩn bị ... 486 Phần cứng cần chuẩn bị... 487 Lắp mạch nguyên lý: ... 487 Code chương trình ... 488 Hình ảnh thực tế ... 491 </small>

<b><small>23. Thiết kế mơ hình hiển thị giờ lên màn hình LCD 16X02 chữ lớn khơng sử module thời gian thực. ... 491 </small></b>

<small>Mục tiêu: ... 491 Phần mền cần chuẩn bị ... 491 Phần cứng cần chuẩn bị... 491 Lắp mạch nguyên lý: ... 492 Code chương trình ... 492 Hình ảnh thực tế ... 497 </small>

<b><small>24. Thiết kế mơ hình bật tắt thiết bị điện bằng máy tính thơng qua phần mền processing và arduino ... 497 </small></b>

<small>Mục tiêu: ... 497 Phần mền cần chuẩn bị ... 497 Phần cứng cần chuẩn bị... 498 Lắp mạch nguyên lý: ... 498 </small>

</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="25">

<small>Mục tiêu: ... 502 Phần mền cần chuẩn bị ... 502 Phần cứng cần chuẩn bị... 502 Lắp mạch nguyên lý phần phát ... 502 Lắp mạch nguyên lý phần thu... 503 Code cho phần phát ... 504 Code cho phần thu ... 504 Hình ảnh thực tế ... 507 </small>

<b><small>26. Thiết kế mơ hình xe robot 3 bánh dị line và tránh vật cản sử dụng board arduino ... 507 </small></b>

<small>Mục tiêu: ... 507 Phần mền cần chuẩn bị ... 507 Phần cứng cần chuẩn bị... 507 Lắp mạch nguyên lý: ... 508 Code chương trình ... 509 Hình ảnh thực tế ... 512 </small>

<b><small>27. Thiết kế mô hình truyền dữ liệu cảm biến qua máy tính thơng qua giao tiếp MODBUS RTU ... 513 </small></b>

<small>Mục tiêu: ... 513 Phần mền cần chuẩn bị ... 513 Phần cứng cần chuẩn bị... 513 Lắp mạch nguyên lý: ... 513 Code chương trình ... 514 Hình ảnh thực tế ... 516 </small>

<b><small>28. Thiết kế mơ hình đo dịng điện AC/DC sử dụng module ACS712 và board arduino ... 517 </small></b>

<small>Mục tiêu: ... 517 Phần mền cần chuẩn bị ... 517 Phần cứng cần chuẩn bị... 517 Lắp mạch nguyên lý: ... 517 Code chương trình ... 518 Hình ảnh thực tế ... 521 </small>

</div><span class="text_page_counter">Trang 26</span><div class="page_container" data-page="26">

<b><small>29. Thiết kế mơ hình điều khiển độ sáng của đèn led ứng dụng giải thuật PID và sử dụng board arduino ... 521 </small></b>

<small>Mục tiêu: ... 521 Phần mền cần chuẩn bị ... 521 Phần cứng cần chuẩn bị... 521 Lắp mạch nguyên lý: ... 522 Code chương trình ... 522 Hình ảnh thực tế ... 523 </small>

<b><small>30. Thiết kế mơ hình điều khiển thiết bị điện thơng qua giao thức (MQTT) và board NodeMCU. ... 523 </small></b>

<small>Mục tiêu: ... 523 Phần mền cần chuẩn bị ... 523 Phần cứng cần chuẩn bị... 523 Lắp mạch nguyên lý: ... 524 Code chương trình ... 524 Cài đặt app trên Ubidots ... 525 Hình ảnh thực tế ... 527 </small>

<b><small>31. Thiết kế mơ hình hiển thị vị trí lên màn hình LCD sử dụng board arduino và GPS neo6 ... 527 </small></b>

<small>Mục tiêu: ... 527 Phần mền cần chuẩn bị ... 527 Phần cứng cần chuẩn bị... 527 Lắp mạch nguyên lý: ... 527 Code chương trình ... 528 Hình ảnh thực tế ... 529 </small>

<b><small>32. Thiết kế mơ hình lọc nhiễu cho cảm biến trong các dự án liên qua đến </small></b>

<b><small>arduino ... 530 </small></b>

</div><span class="text_page_counter">Trang 27</span><div class="page_container" data-page="27">

<small>Hình ảnh thực tế ... 532 </small>

<b><small>33. Thiết kế mơ hình điều khiển thiết bị điện và hiển thị giá trị cảm biến lên </small></b>

<b><small>internet thông qua giao thức (MQTT) và board NodeMCU. ... 533 </small></b>

<small>Mục tiêu: ... 533 Phần mền cần chuẩn bị ... 533 Phần cứng cần chuẩn bị... 533 Lắp mạch nguyên lý: ... 533 Code chương trình ... 534 Cài đặt app trên Ubidots ... 535 Hình ảnh thực tế ... 538 </small>

<b><small>34. Thiết kế mơ hình điều khiển đóng ngắt relay bằng SMS thông qua module sim800l và arduino ... 538 </small></b>

<small>Mục tiêu: ... 538 Phần mền cần chuẩn bị ... 538 Phần cứng cần chuẩn bị... 538 Lắp mạch nguyên lý: ... 538 Code chương trình ... 539 Hình ảnh thực tế ... 540 </small>

<b><small>35. Thiết kế mơ hình điều khiển đóng ngắt relay thơng qua Webserver sử dụng board ESP32 ... 541 </small></b>

<small>Mục tiêu: ... 541 Phần mền cần chuẩn bị ... 541 Phần cứng cần chuẩn bị... 541 Lắp mạch nguyên lý: ... 541 Code chương trình ... 542 Hình ảnh thực tế ... 545 </small>

<b><small>36. Thiết kế mơ hình hiển thị vị trí tọa độ lên màn hình LCD sử dụng module GPS NEO6 và arduino ... 545 </small></b>

<small>Mục tiêu: ... 545 Phần mền cần chuẩn bị ... 545 Phần cứng cần chuẩn bị... 545 Lắp mạch nguyên lý: ... 545 </small>

</div><span class="text_page_counter">Trang 28</span><div class="page_container" data-page="28">

<small>Code chương trình ... 546 Hình ảnh thực tế ... 547 </small>

<b><small>37. Thiết kế mơ hình điều khiển thiết bị điện bằng SMS sử dụng module sim 800l và arduino ... 548 </small></b>

<small>Mục tiêu: ... 548 Phần mền cần chuẩn bị ... 548 Phần cứng cần chuẩn bị... 548 Lắp mạch nguyên lý: ... 548 Code chương trình ... 549 Hình ảnh thực tế ... 550 </small>

<b><small>38. Thiết kế mơ hình điều khiển đảo chiều động cơ bước stepper 1.8/step sử dụng nút nhấn và arduino ... 550 </small></b>

<small>Mục tiêu: ... 550 Phần mền cần chuẩn bị ... 551 Phần cứng cần chuẩn bị... 551 Lắp mạch nguyên lý: ... 551 Code chương trình ... 552 Hình ảnh thực tế ... 554 </small>

<b><small>39. Thiết kế mơ hình điều khiển tốc độ động cơ sử dụng module driver BTS7960 và arduino ... 554 </small></b>

<small>Mục tiêu: ... 554 Phần mền cần chuẩn bị ... 554 Phần cứng cần chuẩn bị... 554 Lắp mạch nguyên lý: ... 555 Code chương trình ... 555 Hình ảnh thực tế ... 556 </small>

<b><small>40. Thiết kế mơ hình điều khiển động cơ bước 1.8/step sử dụng module driver </small></b>

</div><span class="text_page_counter">Trang 29</span><div class="page_container" data-page="29">

<small>Code chương trình ... 558 Hình ảnh thực tế ... 559 </small>

<b><small>41. Thiết kế mơ hình điều khiển thiết bị điện dựa vào giá trị cảm biến ánh sáng và đồng thời gửi tin nhắn về điện thoại. ... 559 </small></b>

<small>Mục tiêu: ... 559 Phần mền cần chuẩn bị ... 559 Phần cứng cần chuẩn bị... 560 Lắp mạch nguyên lý: ... 560 Code chương trình ... 560 Hình ảnh thực tế ... 562 </small>

<b><small>42. Thiết kế mơ hình điều khiển góc quay động cơ bước bằng cảm biến ánh sáng khi trời tối hoặc trời sáng ... 562 </small></b>

<small>Mục tiêu: ... 562 Phần mền cần chuẩn bị ... 563 Phần cứng cần chuẩn bị... 563 Lắp mạch nguyên lý: ... 563 Code chương trình ... 563 Hình ảnh thực tế ... 564 </small>

<b><small>43. Thiết kế mơ hình đo tốc độ động cơ hiển thị lên màn hình LCD sử dụng </small></b>

<b><small>encorder quay và board arduino... 565 </small></b>

<small>Mục tiêu: ... 565 Phần mền cần chuẩn bị ... 565 Phần cứng cần chuẩn bị... 565 Lắp mạch nguyên lý: ... 566 Code chương trình ... 566 Hình ảnh thực tế ... 569 </small>

<b><small>44. Thiết kế mơ hình bật tắt thiết bị điện sử dụng cảm biến vân tay và board arduino ... 570 </small></b>

<small>Mục tiêu: ... 570 Phần mền cần chuẩn bị ... 570 Phần cứng cần chuẩn bị... 570 Lắp mạch nguyên lý: ... 570 </small>

</div><span class="text_page_counter">Trang 30</span><div class="page_container" data-page="30">

<small>Code chương trình ... 571 Hình ảnh thực tế ... 572 </small>

<b><small>45. Thiết kế mơ hình điều khiển số vòng quay cho động cơ bước. ... 573 </small></b>

<small>Mục tiêu: ... 573 Phần mền cần chuẩn bị ... 573 Phần cứng cần chuẩn bị... 573 Lắp mạch nguyên lý: ... 573 Code chương trình ... 574 Hình ảnh thực tế ... 575 </small>

<b><small>46. Thiết kế mơ hình điều khiển bật tắt thiết bị bằng remote hồng ngoại sử dụng arduino ... 576 </small></b>

<small>Mục tiêu: ... 576 Phần mền cần chuẩn bị ... 576 Phần cứng cần chuẩn bị... 576 Lắp mạch nguyên lý: ... 576 Code chương trình ... 577 Hình ảnh thực tế ... 578 </small>

<b><small>47. Thiết kế mơ hình phát nhạc sử dụng module mp3 mini và arduino ... 578 </small></b>

<small>Mục tiêu: ... 578 Phần mền cần chuẩn bị ... 578 Phần cứng cần chuẩn bị... 578 Lắp mạch nguyên lý: ... 579 Code chương trình ... 579 Hình ảnh thực tế ... 582 </small>

<b><small>48. Thiết kế mơ hình đo tốc độ động cơ hiển thị lên màn hình LCD sử dụng </small></b>

<b><small>encoder quang và arduino ... 582 </small></b>

<small>Mục tiêu: ... 582 </small>

</div><span class="text_page_counter">Trang 31</span><div class="page_container" data-page="31">

<b><small>49. Thiết kế mơ hình đo nhiệt ẩm hiển thị lên LCD sử dụng cảm biến HDC1080 và A rduino ... 585 </small></b>

<small>Mục tiêu: ... 585 Phần mền cần chuẩn bị ... 585 Phần cứng cần chuẩn bị... 585 Lắp mạch nguyên lý: ... 585 Code chương trình ... 586 Hình ảnh thực tế ... 587 </small>

<b><small>50. Thiết kế mơ hình đặt mật khẩu cho webserver sử dụng board ESP32 ... 588 </small></b>

<small>Mục tiêu: ... 588 Phần mền cần chuẩn bị ... 588 Phần cứng cần chuẩn bị... 588 Lắp mạch nguyên lý: ... 588 Code chương trình ... 588 Hình ảnh thực tế ... 592 Hướng dẫn cài Tool cho ESP32 vào phần mềm IDE: ... 593 </small>

<b><small>51. Thiết kế mơ hình đồng bộ nút nhấn với webserver sử dụng board ESP32 .... 594 </small></b>

<small>Mục tiêu: ... 594 Phần mền cần chuẩn bị ... 594 Phần cứng cần chuẩn bị... 594 Lắp mạch nguyên lý: ... 594 Code chương trình ... 595 Hình ảnh thực tế ... 599 </small>

<b><small>52. Thiết kế mơ hình đọc giá trị nhiệt độ từ NTC 10k hiển thị lên 4 led 7 đoạn .599 </small></b>

<small>Mục tiêu: ... 599 Phần mền cần chuẩn bị ... 599 Phần cứng cần chuẩn bị... 599 Lắp mạch nguyên lý: ... 599 Code chương trình ... 600 Hình ảnh thực tế ... 601 </small>

<b><small>53. Thiết kế mơ hình bật tắt thiết bị điện thơng qua sóng RF (PT2262 – PT2272) </small></b>

</div><span class="text_page_counter">Trang 32</span><div class="page_container" data-page="32">

<b><small>và Arduino uno ... 602 </small></b>

<small>Mục tiêu: ... 602 Phần mền cần chuẩn bị ... 602 Phần cứng cần chuẩn bị... 602 Lắp mạch nguyên lý: ... 602 Code chương trình ... 603 Hình ảnh thực tế ... 604 </small>

<b><small>54. Thiết kế mơ hình bật tắt thiết bị điện bằng vân tay thông qua module R308 và Nodemcu 8266 ... 604 </small></b>

<small>Mục tiêu: ... 604 Phần mền cần chuẩn bị ... 604 Phần cứng cần chuẩn bị... 604 Lắp mạch nguyên lý: ... 604 Code chương trình: lưu ý khi upload chọn Tool Board NodeMCU 1.0 ... 605 Hình ảnh thực tế ... 606 </small>

<b><small>55. Thiết kế mơ hình chạy chữ trên led P10 ... 607 </small></b>

<small>Mục tiêu: ... 607 Phần mền cần chuẩn bị ... 607 Phần cứng cần chuẩn bị... 607 Lắp mạch nguyên lý: ... 607 Code chương trình ... 608 Hình ảnh thực tế ... 609 </small>

<b><small>56. Thiết kế mô hình Robot bám theo vật sử dụng board Arduino ... 609 </small></b>

<small>Mục tiêu: ... 609 Phần mền cần chuẩn bị ... 609 Phần cứng cần chuẩn bị... 609 </small>

</div><span class="text_page_counter">Trang 33</span><div class="page_container" data-page="33">

<small>Mục tiêu: ... 612 Phần mền cần chuẩn bị ... 612 Phần cứng cần chuẩn bị... 612 Lắp mạch nguyên lý: ... 612 Code chương trình ... 613 Hình ảnh thực tế ... 614 </small>

<b><small>58. Thiết kế mơ hình đo khoảng cách bằng cảm biến siêu âm SRF05 và hiển thị lên led đơn, báo loa ... 615 </small></b>

<small>Mục tiêu: ... 615 Phần mền cần chuẩn bị ... 615 Phần cứng cần chuẩn bị... 615 Lắp mạch nguyên lý: ... 615 Code chương trình ... 616 Hình ảnh thực tế ... 618 </small>

<b><small>59. Thiết kế mô hình gửi giá trị analog từ biến trở 10k qua app điện thoại sử dụng arduino và bluetooth. ... 618 </small></b>

<small>Mục tiêu: ... 618 Phần mền cần chuẩn bị ... 618 Phần cứng cần chuẩn bị... 618 Lắp mạch nguyên lý: ... 618 Code chương trình ... 619 Hình ảnh thực tế ... 620 </small>

<b><small>60. Thiết kế mơ hình gọi điện, nhắn tin từ module sim800l và arduino khi có tín hiệu từ cảm biến hồng ngoại. ... 620 </small></b>

<small>Mục tiêu: ... 620 Phần mền cần chuẩn bị ... 620 Phần cứng cần chuẩn bị... 620 Lắp mạch nguyên lý: ... 620 Code chương trình ... 621 Hình ảnh thực tế ... 623 </small>

<b><small>61. Thiết kế mơ hình đo nhiệt độ không tiếp xúc bằng cảm biến MLX90614 và hiển thị lên màn hình Oled. ... 624 </small></b>

</div><span class="text_page_counter">Trang 34</span><div class="page_container" data-page="34">

<small>Mục tiêu: ... 624 Phần mền cần chuẩn bị ... 624 Phần cứng cần chuẩn bị... 624 Lắp mạch nguyên lý: ... 624 Code chương trình ... 625 Hình ảnh thực tế ... 626 </small>

<b><small>62. Thiết kế mơ hình ghi phát âm thanh bằng module ISD1820 và cảm biến hồng ngoại. ... 627 </small></b>

<small>Mục tiêu: ... 627 Phần mền cần chuẩn bị ... 627 Phần cứng cần chuẩn bị... 627 Lắp mạch nguyên lý: ... 627 Code chương trình ... 628 Hình ảnh thực tế ... 629 </small>

<b><small>63. Thiết kế mơ hình bật tắt relay sử dụng cảm biến vân tay AS608 và hiển thị lên LCD. ... 629 </small></b>

<small>Mục tiêu: ... 629 Phần mền cần chuẩn bị ... 629 Phần cứng cần chuẩn bị... 629 Lắp mạch nguyên lý: ... 629 Code chương trình ... 630 Hình ảnh thực tế ... 634 </small>

</div><span class="text_page_counter">Trang 36</span><div class="page_container" data-page="36">

<b>A. GIỚI THIỆU VỀ ARDUINO</b>

Điều khiển thứ gì đó một cách tự động, ngoài việc phải hoàn chỉnh kết cấu ―phần cứng‖, ta cần phải có mạch điện điều khiển và phải lập trình để mạch điện đó hoạt động theo ý mình. Lập trình thì khơng khó học, chỉ khó ở giai đoạn thiết kế mạch điều khiển là khó khăn nhất đối với những ai chƣa biết về làm mạch thì càng khó hơn ( cịn đƣợc gọi thiết kế truyền thống). Và phải trải qua rất nhiều công đoạn nhƣ sau:

Tuy nhiên có một thứ làm cho mọi chuyện trở nên rất dễ dàng, có tên gọi là ―Arduino<b>”</b>. Và trải qua các công đoạn ngắn gọn nhƣ sau:

</div><span class="text_page_counter">Trang 37</span><div class="page_container" data-page="37">

<b>So sánh các mơ hình điều khiển được sử dụng bằng phương pháp thiết kế “truyền thống” và từ thiết kế bằng “Arduino”. </b>

<b>Phương pháp Truyền ThốngPhương pháp dùng Arduino</b>

<b>Kỹ Năng</b>

• Hiểu biết chuyên sâu về linh kiện điện tử.

• Biết vẽ mạch, rửa mạch, in mạch,…

• Biết lập trình ( việc lập trình khó khăn do module tự thiết kế khơng có chuẩn hóa ).

• Chủ yếu tập trung tìm hiểu kết nối hệ thống, không cần quan tâm đến việc vẽ mạch, làm mạch in,…

• Biết lập trình ( việc lập trình dễ dàng do thư viện có sẵn của các module được chuẩn hóa).

<b>Đối Tượng</b>

• Chỉ dành cho những giới chuyên ngành điện - điện tử.

• Dành cho giới chuyên ngành, không chuyên, thậm chí là học sinh cấp 1, 2,..

<b>Thời Gian</b>

• Thời gian hồn thành rất lâu 1 tuần, có thể từ 1 đến 2 tháng.

• Thời gian tập trung chủ yếu vào làm mạch, ít thời gian để phát triển quy mô hệ thống.

• Thời gian hồn thành rất nhanh.

• Thời gian chủ yếu tập trung vào hệ thống nên có thể làm được những hệ thống phức tạp hơn.

<b>Phát Triển</b>

• Phát triển được kỹ năng thiết kế mạch, in mạch, hàn,…

• Phát triển được tư duy lập trình hệ thống.

Chính vì sự tiện lợi như vậy, Arduino đã trở thành một hiện tượng trên toàn thế giới, nếu bạn lên mạng tìm kiếm và gõ vào Arduino, bạn sẽ thấy hàng ngàn ứng dụng khác nhau từ khắp mọi nơi trên thế giới sử dụng Arduino. Từ đó ta có thể thấy được tầm ảnh hưởng của Arduino đến nhường nào.

</div><span class="text_page_counter">Trang 38</span><div class="page_container" data-page="38">

<b>I. ARDUINO LÀ GÌ?</b>

<i><b>Arduino </b></i>khơng phải là cái gì cao siêu hết, chỉ là sử dụng chip AVR với những thứ mà bạn sẽ cần đến như mạch giao tiếp (USB sang UART), mạch nguồn, có sẵn các chân vào/ra để giao tiếp với cảm biến và các thiết bị ngoại vi.

<i><b>Arduino </b></i>rất đơn giản, dễ sử dụng, dễ code (ngôn ngữ tương tự như C/C++). Một trong những cái hay nhất của Arduino là nó hỗ trợ rất nhiều thư viện, rất tiện lợi.

Nếu bạn muốn điều khiển động cơ, sẽ có các mạch cơng suất tương thích hoàn toàn với Arduino. Nếu bạn muốn điều khiển qua mạng Internet, cũng có một mạch Ethernet/Wifi tương thích hồn tồn với Arduino. Và cịn rất nhiều thứ khác nữa.

</div><span class="text_page_counter">Trang 39</span><div class="page_container" data-page="39">

Arduino cũng có rất nhiều kích thước khác nhau, phù hợp cho nhiều mục đích sử dụng. Thơng dụng nhất hiện nay là <b>Arduino Uno </b>nhỏ gọn dành cho những ai đang bắt đầu học về arduino.

<b>Một số các dự án thú vị đã được thực hiện bằng Arduino. Xe điều khiển: </b>

</div><span class="text_page_counter">Trang 40</span><div class="page_container" data-page="40">

<b>Mơ hình máy bay 4 cánh: </b>

<b>Máy in 3D: </b>

</div>

×