Điều khiển thiết bị điện thông qua ESP 8266 (đồ án thực hiện điều khiển trên điện thoại di động và web).Tìm hiểu về board mạch arduino, ESP8266, role... Các linh kiện liên quan và ứng dụng mô hình sử dụng board mạch vi điều khiển để điều khiển thiết bị điện với lập trình arduino.Tìm hiểu, nắm rõ các khái niệm, nền tảng, quy trình hoạt động… để điều khiển thiết bị điện bằng điện thoại di động với role thông qua ESP 8266.
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC MỎ - ĐỊA CHẤT HÀ NỘI
ĐIỆN THOẠI DI ĐỘNG Sinh viên thực hiện
Nguyễn Thị Hạnh
Cán bộ hướng dẫn
ThS Đặng Xuân Điệp
Hà Nội – 2018
Trang 2lời cảm ơn sâu sắc đến giảng viên hướng dẫn của em là ThS Đặng Xuân Điệp – giảng
viên bộ môn Mạng Máy Tính đã hết lòng giúp đỡ em trong quá trình lựa chọn đề tài và hỗtrợ em trong suốt quá trình thực hiện đồ án
Sau những ngày tháng học tập và làm việc dưới sự giúp đỡ, chỉ dẫn từ phía Thầy, bản thân
em đã đúc kết, tiếp thu, học hỏi được những kiến thức, kinh nghiệm quý báu để hoàn thành
đồ án này Vì thời gian hạn hẹp và trình độ hiểu biết còn hạn chế, nên đồ án của em cònnhiều thiếu sót, em rất mong nhận được những góp ý, sửa đổi từ phía thầy cô để đồ án của
em được hoàn thiện hơn
Em xin chân thành cảm ơn!
Hà Nội, 4/2018
Trang 3
MỤC LỤC LỜI CẢM ƠN 2
MỤC LỤC 3
DANH MỤC HÌNH ẢNH 5
THÔNG TIN KẾT QUẢ NGHIÊN CỨU ĐỒ ÁN 6
LỜI MỞ ĐẦU 7
CHƯƠNG 1: TÌM HIỂU VỀ ARDUINO 8
I TỔNG QUAN VỀ ARDUINO 8
1 Khái niệm Arduino 8
2 Thành phần của Arduino 8
II ĐẶC TÍNH VÀ ỨNG DỤNG CỦA ARDUINO 10
1 Ưu điểm - nhược điểm của Arduino 10
2 Ứng dụng của Arduino 10
CHƯƠNG 2: MODULE WIFI ESP 8266 VÀ MODULE RƠ-LE 12
I MODULE WIFI ESP 8266 12
1 Khái niệm 12
2 Thông số kỹ thuật của ESP 8266 12
4 Sơ đồ chân và chức năng 13
5 Các chế độ boot up của ESP8266 16
II MODULE RƠ-LE 16
1 Tổng quan về rơ-le 16
2 Module Rơ-le 17
3 Cách sử dụng Rơle 18
CHƯƠNG 3: LẬP TRÌNH ARDUINO 19
I CÀI ĐẶT ARDUINO IDE 19
1 Cài đặt chương trình Arduino IDE 19
2 Giao diện của phần mềm Arduino IDE 21
3 Cài đặt Arduino IDE để nạp code cho ESP8266 23
II LẬP TRÌNH ARDUINO 24
1 Cấu trúc của một chương trình trong IDE 24
2 Một số hàm, câu lệnh thường gặp 26
Trang 4
3 Hướng dẫn sử dụng phần mềm Arduino IDE 27
CHƯƠNG 4: CÁC MÔ HÌNH LẬP TRÌNH VỚI ESP8266 32
I SỬ DỤNG FIRMWARE CÓ SẴN GIAO TIẾP AT COMMAND 32
1 Nguyên lý hoạt động 32
2 Tập lệnh AT cơ bản 33
II LẬP TRÌNH TRỰC TIẾP TRÊN CHIP ESP8266 33
1 Nguyên lý hoạt động 33
2 Đặc điểm của quá trình lập trình trên chip ESP8266 34
III LẬP TRÌNH ESP 8266 SỬ DỤNG ARDUINO IDE 37
1 Nguyên lý hoạt động 37
2 Các hàm chuẩn 38
IV SO SÁNH CÁC MÔ HÌNH LẬP TRÌNH ESP 8266 40
CHƯƠNG 5: ĐIỀU KHIỂN THIẾT BỊ ĐIỆN BẰNG ESP 8266 THÔNG QUA ĐIỆN THOẠI DI ĐỘNG 41
I XÂY DỰNG MÔ HÌNH HỆ THỐNG ĐIỆN 41
1 Mô tả hệ thống điện 41
2 Sơ đồ hệ thống điều khiển 41
3 Thiết bị phần cứng 41
II CHƯƠNG TRÌNH ĐIỀU KHIỂN BOARD ARDUINO 41
III MÔ PHỎNG QUÁ TRÌNH ĐIỀU KHIỂN 45
KẾT LUẬN 46
TÀI LIỆU THAM KHẢO 47
Trang 5
DANH MỤC HÌNH ẢNH Hình 1.1 Board Arduino 8
Hình 1.2 Chi tiết mạch Arduino Uno 9
Hình 2.1 Sơ đồ bảng mạch ESP 8266 13
Hình 2.2 Sơ đồ vẽ chân ESP 8266 14
Hình 2.3 Board ESP8266 15
Hình 2.4 Sơ đồ khối của Rơ – le điện từ 17
Hình 2.5 Module Rơ – le kiểu mẫu 17
Hình 3.1 Trang chủ của Arduino 19
Hình 3.2 Màn hình của phần Download 19
Hình 3.3 Màn hình download Arduino IDE 1.8.5 20
Hình 3.4 Màn hình trang download phần mềm 20
Hình 3 5 Giao diện phần mềm IDE 21
Hình 3.6 Các lệnh trên thanh công cụ của phần mền Ardunio IDE 21
Hình 3.7 Menu File 22
Hình 3.8 Menu Tools 22
Hình 3.9 Cài đặt Arduino IDE để nạp code cho ESP8266 23
Hình 3.10 Cài đặt Arduino IDE để nạp code cho ESP8266 (tiếp theo) 23
Hình 3.11 Cài đặt Arduino IDE để nạp code cho ESP8266 (tiếp theo) 24
Hình 3.12 Cài đặt Arduino IDE để nạp code cho ESP8266 (tiếp theo) 24
Hình 3.13 Cấu trúc của một chương trình Arduino IDE 25
Hình 3.14 Hàm void setup() 25
Hình 3.15 Hàm void loop() 26
Hình 3.16 Kết nối Arduino Uno R3 với máy tính qua cáp USB 28
Hình 3.17 Xác định cổng kết nối của Arduino với máy tính 29
Hình 3.18 Nạp thử chương trình mẫu Arduino IDE 30
Hình 3.19 Mã nguồn Blink trong Arduino IDE 31
Hình 4.1 Nguyên lý hoạt động sử dụng firmware có sẵn giao tiếp AT command 32
Hình 4.2 Cấu trúc thư mục của Non-OS SDK 35
Hình 4.3 Cấu trúc thư mục của RTOS SDK 36
Hình 4.4 Mô hình sử dụng IDE của Adruino lập trình cho Esp8266 38
Hình 5.1 Sơ đồ hệ thống điều khiển 41
Trang 6
THÔNG TIN KẾT QUẢ NGHIÊN CỨU ĐỒ ÁN
1 Thông tin chung
Đề tài: điều khiển thiết bị điện bằng điện thoại di động
Giảng viên hướng dẫn: ThS Đặng Xuân Điệp
Sinh viên thực hiện: Nguyễn Thị Hạnh – Mã sinh viên: 1321050519
Lớp: Mạng Máy Tính Khóa 58 – Khoa: Công nghệ thông tin
Trường: Đại học Mỏ - Địa Chất Hà Nội – Hệ đào tạo: Đại học chính quy
3 Nội dung chính
Đồ án gồm 5 chương:
Chương 1: Tìm hiểu về Arduino
Chương 2: Module Wifi ESP8266 và module Rơle
Chương 3: Lập trình Arduino
Chương 4: Các mô hình lập trình với ESP8266
Chương 5: Điều khiển thiết bị điện bằng ESP8266 thông qua điện thoại di động
Trang 7
LỜI MỞ ĐẦU
Công nghệ thông tin và công nghệ tự động hóa đang là hai lĩnh vực có tốc độ pháttriển rất mạnh mẽ, đạt được nhiều thành tựu đáng kể trong thời gian gần đây Chính vìnhững yếu tố đó mà kinh tế phát triển nên nhu cầu của con người cũng được nâng cao, việcđiều khiển một cách tự động và hệ thống hóa các thiết bị trong gia đình là sự ưu tiên hàngđầu
Cùng với xu hướng phát triển của thế giới, Việt Nam trong thời gian gần đây cũng đã từngbước phát triển hệ thống nhà thông minh điều khiển bằng các thiết bị Smartphone hayWebserver Hệ thống nhà thông minh đang được ưu tiên và phát triển rộng rãi Một trongnhững yếu tố quan trọng và nền móng dể hướng đến phát triển với một ngôi nhà thôngminh hiện nay là một hệ thống điều khiển các thiết bị thông minh mà không phụ thuộc vàophạm vi khoảng cách
Như chúng ta cũng đã biết, gần như các thiết bị tự động trong nhà máy, trong đời sống củacác gia đình ngày nay đều hoạt động độc lập với nhau, mỗi thiết bị có một quy trình sửdụng khác nhau tuỳ thuộc vào sự thiết lập, cài đặt của người sử dụng Chúng chưa có một
sự liên kết nào với nhau về mặt dữ liệu Nhưng đối với hệ thống điều khiển thiết bị điệnthông qua hệ thống điều khiển bằng điện thoại di động thì lại khác Ở đây, các thiết bị điềukhiển tự động được kết nối với nhau thành một hệ thống hoàn chỉnh qua một một thiết bịtrung tâm và có thể giao tiếp với nhau về mặt dữ liệu Điều khiển thiết bị bằng điện thoại diđộng là một ứng dụng mang tính hiện đại và có giá trị thực tiễn cao Với chỉ một chiếc điệnthoại di động trên tay, bất cứ ở đâu hay đang làm gì thì vẫn có thể quản lý, giám sát và điềukhiển được các thiết bị điện trong gia đình Qua đây cho thấy giải pháp điều khiển thiết bịthông qua điện thoại di động là một giải pháp hữu dụng trong thực tiễn hiện nay
Chính những nhu cầu thực tiễn này, em đã lựa chọn đề tài tốt nghiệp nghiên cứu về việc
“điều khiển thiết bị điện bằng điện thoại di động”, đây là một đề tài mà đáp ứng được
thực tiễn cao từ phía người sử dụng, có tính khả thi và phù hợp với xu thế của nhân loại
Trang 8
CHƯƠNG 1: TÌM HIỂU VỀ ARDUINO
1 Khái niệm Arduino
Arduino là một nền tảng thiết bị điện tử mã nguồn mở được sử dụng để xây dựngcác ứng dụng điện tử Nói cách khác, Arduino là một board mạch vi xử lý được dùng để lậptrình tương tác với các thiết bị phần cứng (như cảm biến, động cơ, đèn hoặc các thiết bịkhác)
Hình 1.1 Board Arduino
Arduino ra đời tại thị trấn Ivrea thuộc nước Ý và được đặt theo tên một vị vua vào thế kỷthứ 9 là King Arduin Arduino chính thức được đưa ra giới thiệu vào năm 2005 và khôngngừng mở rộng trong những năm qua với nhiều nhà sản xuất và nhà phân phối trên toàn thếgiới
5 Thành phần của Arduino
Arduino gồm hai phần: Phần cứng gồm một board mạch mã nguồn mở (vi điềukhiển): có thể lập trình được Hiện phần cứng của Arduino có tất cả 6 phiên bản, tuy nhiênphiên bản được sử dụng nhiều nhất là Arduino Uno và Arduino Mega Phần mềm để lậptrình cho mạch Arduino là phần mềm IDE (Integrated Development Environment) dùng đểsoạn thảo, biên dịch code và nạp chương cho board: đây là phần mềm mã nguồn mở và có
thể được download từ trang web của Arduino: arduino.cc.
Cổng cắm USB: dùng để kết nối với cap USB, đây là cổng giao tiếp để upload code từ PC
lên vi điểu khiển Đồng thời nó cũng là giao tiếp serial để truyền dữ liệu giữa vi điểu khiểnvới máy tính
Trang 9
Cổng cấp nguồn điện: để chạy Arduino thì có thể lấy nguồn từ cổng USB ở trên, nhưng
không phải lúc nào cũng có thể cắm với máy tính được Cổng cấp nguồn điện nhằm sửdụng nguồn điện bên ngoài như pin, bình acquy hay các adapter cho board Arduino hoạtđộng Nguồn điện cấp vào cổng này là nguồn DC có hiệu điện thế từ 6V đến 20V, tuy nhiênhiệu điện thế tốt nhất mà nhà sản xuất khuyên dùng là từ 7 đến 12V
Chân tín hiệu Analog (0-5): Các chân này lấy tín hiệu Analog (tín hiệu tương tự) từ cảm
biến để IC Atmega 328 xử lý Có tất cả 6 chân lấy tín hiệu Analog, từ A0 đến A5
Chân cấp nguồn cho cảm biến: Các chân này dùng để cấp nguồn cho các thiết bị bên
ngoài như role, cảm biến… trên khu vực này có sẵn các chân GND (chân nối đất, chân âm),
chân 5V, chân 3.3V như được thể hiện ở hình 1.2 Nhờ những chân này mà người sử dụng
không cần thiết bị biến đổi điện khi cấp nguồn cho cảm biến, role… Ngoài ra trên khu vực
này còn có chân Vin (nguồn vào) và chân reset Tuy nhiên các chân này thường ít được
sử dụng
IC điều khiển ATmega 328: là linh hồn của board mạch Arduino Uno, IC này được sử
dụng trong việc thu thập dữ liệu từ cảm biến, xử lý dữ liệu, xuất tín hiệu ra…
Chân ICSP (In-Circuit Serial Programming) của ATmega 328: Các chân ICSP của
ATmega 328 được sử dụng cho các giao tiếp SPI (Serial Peripheral Interface), một số ứngdụng của Arduino có sử dụng chân này, ví dụ như sử dụng module RFID RC522 vớiArduino hay Ethernet Shield với Arduino
Nút reset: sử dụng để reset lại chương trình đang chạy Đôi khi chương trình chạy gặp lỗi,
người dùng có thể reset lại chương trình
Trang 10
Chân tín hiệu số (2-13) những chân có dấu ~ là những chân có thể băm xung (PWM), tức
có thể điều khiển tốc độ động cơ hoặc độ sáng của đèn Hình 1.2 thể hiện rất rõ những chân
để băm xung này
Pin điện áp tham chiếu (AREF Pin).
II ĐẶC TÍNH VÀ ỨNG DỤNG CỦA ARDUINO
1 Ưu điểm - nhược điểm của Arduino
Hiện tại ở Việt Nam và trên thế giới cũng có nhiều board mạch vi điều khiển khácnhau Tuy nhiên Arduino có một số ưu điểm mà khiến nó trở nên nổi tiếng và hiện đangđược sử dụng rộng rãi Các ưu điểm đó là: Rẻ, dễ mua, đơn giản và nhanh (rất dễ dàng lắpráp, lập trình và sử dụng thiết bị), Arduino chạy trên đa nền tảng (lập trình Arduino có thểthực hiện trên nhiều hệ điều hành khác nhau như Windows, Mac OS, Linux, Android) Hơnthế ngôn ngữ lập trình đơn giản, dễ hiểu (ngôn ngữ tương tự như C++) Nền tảng mở:Arduino được phát triển trên nguồn mở nên phần mềm chạy trên Arduino được chia sẻ dễdàng và tích hợp vào các nền tảng khác nhau Dễ dàng chia sẻ: mọi người dễ dàng chia sẻ
mã nguồn với nhau mà không lo lắng về ngôn ngữ hay hệ điều hành mình đang sử dụng.Khả năng kết nối của board mạch Arduino cao: có thể hoạt động độc lập cũng có thể kết nốivới một máy tính Máy tính ấy sẽ được phép truy cập dữ liệu cảm biến từ thế giới bên ngoài
và cung cấp thông tin phản hồi Các Arduino cũng có thể kết nối với nhau Hay Arduino cóthể kết nối với thiết bị điện tử, chip điều khiển khác nên việc mở rộng phần cứng cũng dễdàng hơn
Tuy nhiên, Arduino cũng có những nhược điểm nhất định như ảnh hưởng đến kích thước
dự án ví dụ như board mạch Arduino Due với kích thước 101.5×53.5mm, không quá to,nhưng khi đặt vào một mô hình điện tử đơn giản thì nó cũng sẽ chiếm vị trí khá ngốn so với
mô hình Ngoài ra, đòi hỏi người sử dụng có kiến thức nhất định về điện, điện tử và hướnglập trình đối tượng mới có thể sử dụng tốt các board mạch vi điều khiển
Trang 11
CHƯƠNG 2: MODULE WIFI ESP 8266 VÀ MODULE RƠ-LE
I MODULE WIFI ESP 8266
1 Khái niệm
ESP 8266 là một mạch vi điều khiển nhằm điều khiển các thiết bị điện tử được sảnxuất bởi một công ty bán dẫn Trung Quốc: Espressif Systems ESP 8266 là một dòng chiptích hợp cao – System on chip, có khả năng xử lý lưu trữ tốt cung cấp khả năng vượt trội để trang bị thêm tính năng wifi trong hệ thống khác hoặc đóng vai trò như một giải pháp độc lập
7 Thông số kỹ thuật của ESP 8266
ESP8266 cung cấp khả năng kết nối wifi đầy đủ khép kín có thể dùng nó để tạo mộtweb server đơn giản hoặc sử dụng accsess point Module ESP8266 là module wifi giá rẻ vàđược đánh giá rất cao cho các ứng dụng liên quan đến Internet và Wifi cũng như các ứngdụng truyền nhận sử dụng thay thế cho các module RF khác với khoảng cách truyền lên tới
100 mét (Môi trường không có vật cản) và trên 400m với anten và router thích hợp
Thông số kỹ thuật của ESP 8266:
- Hỗ trợ chuẩn 802.11 b/g/n
- Wi-Fi 2.4 GHz, hỗ trợ WPA/WPA2
- Chuẩn điện áp hoạt động: 3.3V
- Chuẩn giao tiếp nối tiếp UART với tốc độ Baud lên đến 115200
- Có 3 chế độ hoạt động: Client, Access Point, Both Client and Access Point
- Hỗ trợ các chuẩn bảo mật như: OPEN, WEP, WPA_PSK, WPA2_PSK,WPA_WPA2_PSK
- Hỗ trợ cả 2 giao tiếp TCP và UDP
- Làm việc như các máy chủ có thể kết nối với 5 máy con
- LED chỉ báo truyền nhận TX / RX
8 Phân loại module ESP
Ngoại trừ module ESP-WROOM-02 được phát triển bởi chính Espressif cho mụcđích nghiên cứu các tính năng của ESP8266, các module ứng dụng phổ biến hiện nay củaESP8266 đều được phát triển bởi công ty AI-Thinker Hiện tại có khá nhiều module khácnhau cho ESP8266 được sản xuất bởi công ty AI-Thinker
Đặc điểm khác nhau giữa các module này bao gồm:
- Loại anten sử dụng (PCB anten, chip anten hoặc gắn anten ngoài)
- Dung lượng của chip Flash SPI trên board
- Kích thước board của module
- Có gắn khung nhôm chống nhiễu hay không
Trang 12
- Số lượng pin GPIO đưa ra chân kết nối
Hiện tại AI-Thinker sản xuất 14 loại module cho ESP từ module ESP-01 đến ESP-14 Ở thịtrường VN thì 3 module là ESP-01, ESP-07 và ESP-12F khá phổ biến
9 Sơ đồ chân và chức năng
Hình 2.1 Sơ đồ bảng mạch ESP 8266
Trang 13
Hình 2.2 Sơ đồ vẽ chân ESP 8266
Chip ESP 8266 được phát triển bởi Espressif để cung cấp giải pháp giao tiếp Wificho các thiết bị IoT Điểm đặc biệt của dòng ESP8266 là nó được tích hợp các mạch RFnhư balun, antenna switches, TX power amplifier và RX filter ngay bên trong chip với kíchthước rất nhỏ chỉ 5x5mm nên các board sử dụng ESP8266 không cần kích thước board lớncũng như không cần nhiều linh kiện xung quanh Ngoài ra, giá thành của ESP8266 cũng đủ
để hấp dẫn các nhà phát triển sản phẩm IoT
Cấu trúc phần cứng của dòng chip ESP8266 có thể tóm tắt như sau:
- Sử dụng 32-bit MCU core có tên là Tensilica
- Tốc độ system clock có thể set ở 80MHz hoặc 160MHz
- Không tích hợp bộ nhớ Flash để lưu chương trình
- Tích hợp 50KB RAM để lưu dữ liệu ứng dụng khi chạy
- Có đầy đủ các ngoại vi chuẩn đê giao tiếp như 17 GPIO, 1 Slave SDIO, 3 SPI, 1I2C, 1 I2S, 2 UART, 2 PWM
- Tích hợp các mạch RF để truyền nhận dữ liệu ở tần số 2.4GHz
- Hỗ trợ các hoạt động truyền nhận các IP packages ở mức hardware nhưAcknowledgement, Fragmentation và Defragmentation, Aggregation, FrameEncapsulation… (và phần stack TCP/IP sẽ được thực hiện trên firmware củaESP8266)
Trang 14
- Do không hỗ trợ bộ nhớ Flash nên các board sử dụng ESP8266 phải gắn thêm chipFlash bên ngoài và thường là Flash SPI để ESP8266 có thể đọc chương trình ứngdụng với chuẩn SDIO hoặc SPI
Dưới đây là mạch nguyên lý đầy đủ cho ESP8266:
Board ESP8266 chỉ cần thạch anh và SPI flash chip và vài linh kiện điện trở rất đơn giản
Do đó việc tích hợp giao tiếp Wifi vào board ứng dụng với ESP8266 rất dễ dàng và nhanhchóng Công ty Espressif cũng cung cấp khá đầy đủ tài liệu và software tools để các nhàphát triển sản phẩm có thể nhanh chóng làm quen và phát triển ứng dụng với ESP8266 Cóthể tải về từ trang:
https://espressif.com/en/products/hardware/esp8266ex/resources
Về mô hình lập trình ứng dụng với ESP8266, chúng ta có thể chia làm 2 loại như sau:
- Sử dụng firmware được cung cấp bởi Espressif và giao tiếp thông qua ATcommands
- Lập trình firmware trực tiếp vào ESP8266 sử dụng bộ thư viện SDK cung cấpbởi Espressif
10.Các chế độ boot up của ESP8266
Hình 2.3 Board ESP8266
Trang 15
Do ESP8266 không tích hợp Flash bên trong chip để lưu code ứng dụng nên chúng
ta phải lưu code ứng dụng trong bộ nhớ ngoài bao gồm chip SPI Flash hoặc SDCard.Chúng ta có thể kết nối 1 số chân GPIO để báo cho ESP8266 nơi lưu code ứng dụng để từ
đó ESP8266 có thể đọc code và thực thi
Các chế độ boot up của ESP và cấu hình chân GPIO tương ứng như sau:
Chân MTD0 chính là chân GPIO15 của ESP8266 Chúng ta có thể kết nối điện trở kéolên/kéo xuống hoặc dùng nút nhấn trên board tạo tín hiệu High/Low cho các chân để chọn
bộ nhớ chứa code trên board mà ESP8266 có thể đọc vào và thực thi (ví dụ như SPI Flashchip, SDCard) Ngoài ra ESP8266 còn chế độ cho phép truyền code ứng dụng từ máy tínhthông qua UART và lưu vào bộ nhớ SPI Flash trên board Chúng ta sẽ dùng chế độ này đểnạp code mới cho các board ESP8266
III MODULE RƠ-LE
1 Tổng quan về rơ-le
Rơ-le là một loại thiết bị điện tự động mà tín hiệu đầu ra thay đổi nhảy cấp khi tínhiệu đầu vào đạt những giá trị xác định Rơle là thiết bị điện dùng để đóng cắt mạch điện
điều khiển, bảo vệ và điều khiển sự làm việc của mạch điện động lực Nói cách khác, Rơ-le
là một công tắc (khóa K) Nhưng khác với công tắc ở một chỗ cơ bản, rơ-le được kích hoạtbằng điện thay vì dùng tay người
Rơle gồm có 3 bộ phận (các khối) chính:
Cơ cấu tiếp thu (khối tiếp thu): Có nhiệm vụ tiếp nhận những tín hiệu đầu vào và biến đổi
nó thành đại lượng cần thiết cung cấp tín hiệu phù hợp cho khối trung gian
Cơ cấu trung gian (khối trung gian): Làm nhiệm vụ tiếp nhận những tín hiệu đưa đến từ
khối tiếp thu và biến đổi nó thành đại lượng cần thiết cho rơle tác động
Cơ cấu chấp hành (khối chấp hành): Làm nhiệm vụ phát tín hiệu cho mạch điều khiển.
Trang 16
Hình 2.4 Sơ đồ khối của Rơ – le điện từ
Ví dụ các khối trong cơ cấu rơle điện từ hình 2.4: Cơ cấu tiếp thu ở đây là cuộn dây Cơ cấu
trung gian là mạch từ nam châm điện Cơ cấu chấp hành là hệ thống tiếp điểm
2 Module Rơ-le
Hình 2.5 Module Rơ – le kiểu mẫu
Một module rơ-le được tạo nên bởi 2 linh kiện thụ động cơ bản là rơ-le và transistor Cácmức hiệu điện thế tối đa và cường độ dòng điện tối đa của đồ dùng điện khi nối vào modulerơ-le:
- 10A - 250VAC: Cường độ dòng điện tối đa qua các tiếp điểm của rơ-le với hiệu điệnthế <= 250V (AC) là 10A
- 10A - 30VDC: Cường độ dòng điện tối đa qua các tiếp điểm của rơ-le với hiệu điệnthế <= 30V (DC) là 10A
- 10A - 125VAC: Cường độ dòng điện tối đa qua các tiếp điểm của rơ-le với hiệu điệnthế <= 125V (AC) là 10A
- 10A - 28VDC: Cường độ dòng điện tối đa qua các tiếp điểm của rơ-le với hiệu điệnthế <= 28V (DC) là 10A
- SRD-05VDC-SL-C: Hiện điện thế kích tối ưu là 5V
3 Cách sử dụng Rơle
Rơ-le bình thường gồm có 6 chân Trong đó có 3 chân để kích, 3 chân còn lại nốivới đồ dùng điện công suất cao
Trang 17
+: cấp hiệu điện thế kích tối ưu vào chân này
-: nối với cực âm
S: chân tín hiệu, tùy vào loại module rơ-le mà nó sẽ làm nhiệm vụ kích rơ-le
Nếu đang dùng module rơ-le kích ở mức cao và chân S cấp điện thế dương vào thì modulerơ-le sẽ được kích, ngược lại thì không Tương tự với module rơ-le kích ở mức thấp
3 chân còn lại nối với đồ dùng điện công suất cao:
COM: chân nối với 1 chân bất kỳ của đồ dùng điện, nhưng mình khuyên bạn nên mắc vàođây chân lửa (nóng) nếu dùng hiệu điện thế xoay chiều và cực dương nếu là hiệu điện mộtchiều
ON hoặc NO: chân này bạn sẽ nối với chân lửa (nóng) nếu dùng điện xoay chiều và cựcdương của nguồn nếu dòng điện một chiều
OFF hoặc NC: chân này bạn sẽ nối chân lạnh (trung hòa) nếu dùng điện xoay chiều và cực
âm của nguồn nếu dùng điện một chiều
Trang 18
CHƯƠNG 3: LẬP TRÌNH ARDUINO
I CÀI ĐẶT ARDUINO IDE
1 Cài đặt chương trình Arduino IDE
Arduino IDE (Arduino Integrated Development Environment) là một trình soạn thảo vănbản, giúp bạn viết code để nạp vào bo mạch arduino Một chương trình viết bởi Arduino
IDE được gọi là sketch, sketch được lưu dưới định dạng ino.
Truy cập trang chủ của Arduino: https://www.arduino.cc/
Chọn mục Software/Download sau đó kéo xuống phía dưới trang hiện lên để chọn hệ
điều hành
Hình 3.2 Màn hình của phần Download.
Hình 3.1 Trang chủ của Arduino
Trang 19
Hình 3.3 Màn hình download Arduino IDE 1.8.5.
Kích chọn hệ điều hành tương ứng sau đó download chương trình về để cài đặt Arduino cóđưa ra hai lựa chọn: bao gồm chỉ download về (just download) và download về cùng quyêngóp (contribute and download), như được thể hiện ở hình dưới Arduino mong muốn ngườidùng nếu có điều kiện hãy quyên góp ủng hộ hãng, với các mức quyên góp khác nhau.Cài đặt: sử dụng phiên bản mới nhất tính đến tháng 4/2018 (phiên bản Arduino IDE 1.8.5):
Sau khi load về sẽ có một file exe Người dùng sử dụng file đó để cài đặt.
Hình 3.4 Màn hình trang download phần mềm.
Trang 20
Hình 3 5 Giao diện phần mềm IDE
2 Giao diện của phần mềm Arduino IDE
Vùng thanh công cụ:
Hình 3.6 Các lệnh trên thanh công cụ của phần mền Ardunio IDE.
Hiển thị màn hình giao tiếp với máy tính: Khi nhấp vào biểu tượng cái kính lúp thì phần
giao tiếp với máy tính sẽ được mở ra Phần này sẽ hiển thị các thông số mà người dùngmuốn đưa lên màn hình Muốn đưa lên màn hình phải có lệnh Serial.print() mới có thể đưa
Trang 21
Vùng viết chương trình: Vùng này để người lập trình thực hiện việc lập trình cho chương
trình của mình
Vùng thông báo: Có chức năng thông báo các thông tin lỗi của chương trình hoặc các vấn
đề liên quan đến chương trình được lập
Sử dụng một số menu thông dụng trên phần mềm IDE:
Menu File: ngoài những tính năng như mở một file mới hay lưu một file, phần menu này
có một mục đáng chú ý là Example Phần Example (ví dụ) đưa ra các ví dụ sẵn để người lậptrình có thể tham khảo, giảm bớt thời gian lập trình
Hình 3.7 Menu File Menu Tools: Khi mới kết nối bo Arduino với máy tính ta click vào Tools/Board để chọn
loại board sử dụng Phần mềm chọn sẵn kiểu board là board Arduino Uno
Hình 3.8 Menu Tools
Trang 22
11.Cài đặt Arduino IDE để nạp code cho ESP8266
Để tiến hành cài đặt thư viện và chức năng nạp code cho IDE các bạn làm như sau:Vào File→ Preferences, vào textbox Additional Board Manager URLs thêm đường link sauvào:
http://arduino.esp8266.com/stable/package_esp8266com_index.json
Click OK để chấp nhận
Hình 3.9 Cài đặt Arduino IDE để nạp code cho ESP8266
Tiếp theo vào Tool→Board→Boards Manager
Trang 23
Đợi một lát để chương trình tìm kiếm Ta kéo xuống và click vào ESP8266 by ESP8266
Community, click vào Install Chờ phần mềm tự động download và cài đặt.
Hình 3.11 Cài đặt Arduino IDE để nạp code cho ESP8266 (tiếp theo)
Kết nối mudule USB-to-UART vào máy tính Vào Tool→Board→Generic ESP8266
Module, chọn cổng COM tương ứng với module USB-to-UART tương ứng.
Hình 3.12 Cài đặt Arduino IDE để nạp code cho ESP8266 (tiếp theo)
IV LẬP TRÌNH ARDUINO
1 Cấu trúc của một chương trình trong IDE