(Cơ điện tử Việt Nam - Vi điều khiển) Trong hướng dẫn hôm nay, chúng ta sẽ tìm hiểu về sự tương tác giữa trang web, mô-đun Wi-Fi và Arduino. Chúng tôi sẽ điều khiển góc của động cơ servo sử dụng Arduino và mô-đun Wi-Fi Esp8266. Chúng tôi sẽ phát triển một trang web nhỏ sử dụng tập lệnh html và java, sau đó gửi lệnh đến Arduino bằng mô-đun Wi-Fi.
Chúng tôi sẽ tạo kết nối giữa trang web và mô-đun Wi-Fi bằng địa chỉ IP và sau đó bằng cách sử dụng thanh trượt, chúng tôi sẽ điều khiển góc của Mô tơ. Nếu chúng tôi đặt chuyển tiếp cổng cho bộ định tuyến Wi-Fi của mình, chúng tôi có thể điều khiển động cơ từ mọi nơi trên thế giới. Nó chỉ là cài đặt của bộ định tuyến lưu ý cần phải được thay đổi trong mã hoặc mạch. Bạn có thể tìm kiếm cài đặt chuyển tiếp cổng cho bộ định tuyến của mình trên Internet. Trước khi bắt đầu hướng dẫn này, tôi sẽ khuyên bạn nên kiểm tra cách Giao tiếp Mô-đun Wi-Fi ESP8266 với Arduino: Gửi dữ liệu đến máy chủ (ThingSpeak)
Các thiết bị cần thiết để điều khiển động cơ servo sử dụng esp8266
Sau đây là danh sách các thiết bị cần thiết cho dự án cụ thể này.
- Arduino UNO
- Động cơ Servo
- Mô-đun Wi-Fi ESP8266
- Một điện trở 2k
- Một điện trở 1k
- Dây nhảy
Mô-đun Wi-Fi esp8266
Mô-đun Wi-Fi có 8 chân cắm được sắp xếp thành 2 hàng. Giữ cho mặt tích hợp hướng về phía bạn và ghim gần đầu của bạn hơn. Hàng dưới từ trái sang phải là
- Tx - Chốt truyền
- CH-DO - Chốt kênh xuống
- RST - Đặt lại
- Nguồn điện Vcc - 3.3V
Hàng trên từ trái sang phải có
- GND - Nguồn phân cực âm
- GPIO_2 - Không được sử dụng
- GPIO_0 - Không được sử dụng
- Rx - Chân máy thu
Động cơ Servo:
Động cơ servo từ Công ty Tower Pro được hiển thị bên dưới. Nó có 3 dây đầu ra.
- Màu nâu (Nguồn cấp chân Ground)
- Màu đỏ (Nguồn điện 5V)
- Màu cam (Pin tín hiệu)
Động cơ Servo được điều khiển trên web sử dụng Arduino và esp8266
Kết nối của mô-đun Wi-Fi ESP8266 với Arduino như sau.
- Pin Tx của mô-đun Wi-Fi ESP8266 với D6 của Arduino
- Mô-đun Wi-Fi ESP8266 Chân CH-EN với 3V của Arduino
- Mô-đun Wi-Fi ESP8266 Pin Vcc với 3V của Arduino
- Mô-đun Wi-Fi ESP8266 Chân GND với GND của Arduino
- Mô-đun Wi-Fi ESP8266 Rx Chân với điểm giữa (Điểm giao nhau của loạt điện trở 1k và 2k) của Bộ chia điện áp.
- Đầu thứ hai của điện trở 1k với D7 của Arduino.
- Đầu thứ hai của điện trở 2k với GND của Arduino.
Kết nối của động cơ Servo với Arduino như sau.
- Chân GND của Servo Motor với GND của Arduino.
- Chân Servo Motor Vcc với 5V của Arduino.
- Chân tín hiệu động cơ Servo với D10 của Arduino.
Phần mềm:
Đầu tiên, bạn cần tạo một trang .html, trang này sẽ tạo thành trang web của bạn để kiểm soát góc Động cơ. Bạn cũng sẽ cần tệp jQuery cho nó. Cả hai phải ở trong cùng một thư mục. Cả hai tệp đều được cung cấp ở cuối.
Giải thích về mã html:
<! DOCTYPE> cho trình duyệt biết rằng chúng tôi đang sử dụng phiên bản html5 để viết mã html cho trang này. Nó phải ở đầu trang
<html> </html> mã được viết bên trong các thẻ này được hiển thị trên trang web và thanh tiêu đề. Nó bao gồm các thẻ đầu và thân. Nó cho biết điểm bắt đầu và điểm kết thúc của trang html tới trình duyệt.
<head> </head> các thẻ này chứa tiêu đề, kiểu, liên kết và tập lệnh jQuery.
<title> </title> câu lệnh được viết bên trong thẻ tiêu đề được hiển thị trên thanh tiêu đề hoặc tab của trang.
<script> </script> thẻ này được sử dụng để bao gồm jQuery. JQuery là phần mềm thư viện JavaScript được sử dụng để đơn giản và tự động hóa các tác vụ.
<body> </body> Những gì từng được viết bên trong thẻ body sẽ hiển thị trên trang của trang web. Các thẻ khác nhau được sử dụng bên trong thẻ nội dung để làm cho màn hình hấp dẫn và dễ đọc.
Thẻ <center> </center> được sử dụng để đưa văn bản vào giữa trang
<h1> </h1> được sử dụng để làm cho kích thước lớn hơn. Có các thẻ h2, h3, h4, h5 khác nhau về kích thước văn bản.
<marquee> </marquee> được sử dụng để di chuyển văn bản theo hướng xác định như đã đề cập trong thuộc tính “hướng”.
<b> <\ b> làm cho văn bản in đậm.
<div> </div> được sử dụng để tạo một hộp có chiều cao và chiều rộng được chỉ định. Đường viền không được hiển thị cho nó.
<FORM> </FORM> được sử dụng để lấy đầu vào từ người dùng.
<input type = “range”> tạo một thanh trượt có phạm vi có thể được chỉ định trong các thuộc tính của thẻ.
Chức năng servo gửi giá trị của thanh trượt đến bo mạch để nó có thể di chuyển servo đến một góc xác định và ở cuối nó sẽ đóng kết nối.
Phần thứ hai của phần mềm bao gồm mã Arduino được đặt trong IDE và được tải lên bo mạch.
Giải thích về mã Arduino:
#include <SoftwareSerial.h> Bao gồm thư viện nối tiếp phần mềm cho phép chúng tôi sử dụng các chân khác làm chân Tx và Rx. Điều này giúp chúng tôi không phải cắm dây từ pin0 và pin1 của bo mạch mỗi khi chúng tôi tải lên chương trình của mình. Nếu bạn sử dụng D0 và D1 làm chân Tz và Rx thì bạn sẽ phải rút phích cắm các chân này mỗi khi tải chương trình lên bảng Arduino.
#include <Servo.h> bao gồm thư viện động cơ servo
#define servopin 10 kết nối động cơ servo trên chân 10
#define DEBUG true Để hiển thị thông báo mô-đun trên màn hình serail
SoftwareSerial compin(6, 7); xác định chân giao tiếp Tx và Rx
Servo serMtr; khai báo Biến động cơ Servo
serMtr.attach (servopin); gắn động cơ servo vào chân servo
serMtr.write (maxPos); để cho biết động cơ hội đồng quản trị được gắn vào, nó được đặt ở vị trí tối đa
serMtr.detach (); sau đó tách động cơ ra để nó có thể hoạt động theo hàm void loop ().
Serial.begin (9600); bắt đầu theo dõi nối tiếp và đặt tốc độ truyền thành 9600
compin.begin (9600); Khởi động mô-đun và đặt tốc độ truyền thành 9600
sData (“AT + RST \ r \ n”, 2000, DEBUG); Đặt lại mô-đun
sData (“AT + CWMODE = 1 \ r \ n”, 1000, DEBUG); Đặt mô-đun ở chế độ ga
sData (“AT + CWJAP = \” Cơ điện tử Việt Nam \ ”, \” codientu.online \ ”\ r \ n”, 2000, DEBUG); Kết nối với Bộ định tuyến Wi-Fi. Thay thế Cơ điện tử Việt Nam bằng tên Wi-Fi của bạn và codientu.online bằng mật khẩu bộ định tuyến Wi-Fi của bạn.
sData (“AT + CIFSR \ r \ n”, 1000, DEBUG); Hiển thị địa chỉ IP trên màn hình nối tiếp
sData (“AT + CIPMUX = 1 \ r \ n”, 1000, DEBUG); Cho phép nhiều kết nối
sData (“AT + CIPSERVER = 1,80 \ r \ n”, 1000, DEBUG); Khởi động máy chủ web trên cổng 80
sData là một chức năng được sử dụng để gửi dữ liệu đến mô-đun và kiểm tra phản hồi của mô-đun Wi-Fi.
void loop () Trong chức năng này, mô-đun Wi-Fi sẽ kiểm tra xem dữ liệu đã đến hay chưa. Nếu dữ liệu đến thì nó sẽ đọc dữ liệu này và sẽ hiển thị trên màn hình nối tiếp và di chuyển Động cơ tương ứng.
Ưu điểm:
- Thiết bị giao tiếp mạng Wi-Fi không có dây có thể giảm chi phí của dây.
- Thiết lập và cấu hình Wi-Fi dễ dàng hơn quá trình đi dây cáp
- Nó hoàn toàn an toàn và nó sẽ không can thiệp vào bất kỳ mạng nào
- Chúng tôi cũng có thể kết nối internet thông qua các điểm phát sóng
- Chúng ta có thể kết nối internet không dây
Nhược điểm:
- Wi-Fi tạo ra bức xạ có thể gây hại cho sức khỏe con người
- Chúng tôi phải ngắt kết nối Wi-Fi bất cứ khi nào chúng tôi không sử dụng máy chủ
- Có một số giới hạn để truyền dữ liệu, chúng tôi không thể truyền dữ liệu trong khoảng cách xa.