![Điều khiển WiFi mô hình tàu hỏa sử dụng MQTT: 9 bước Điều khiển WiFi mô hình tàu hỏa sử dụng MQTT: 9 bước](https://i.howwhatproduce.com/images/001/image-2097-65-j.webp)
Mục lục:
2025 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2025-01-23 15:15
![Mô hình điều khiển WiFi bằng tàu hỏa sử dụng MQTT Mô hình điều khiển WiFi bằng tàu hỏa sử dụng MQTT](https://i.howwhatproduce.com/images/001/image-2097-66-j.webp)
Có một hệ thống mô hình xe lửa quy mô TT cũ, tôi đã có ý tưởng làm thế nào để điều khiển các locos riêng lẻ.
Với suy nghĩ này, tôi đã tiến thêm một bước và tìm ra những gì cần thiết để không chỉ điều khiển tàu mà còn có thêm một số thông tin về toàn bộ bố cục và điều khiển thứ gì đó khác (đèn, công tắc đường ray…)
Đây là cách hệ thống tàu mô hình điều khiển bằng WiFi ra đời.
Bước 1: Hoạt động Priciples
![Chiến dịch Priciples Chiến dịch Priciples](https://i.howwhatproduce.com/images/001/image-2097-67-j.webp)
Nguyên tắc chính là điều khiển từng phần tử riêng lẻ, từ một bộ điều khiển duy nhất hoặc từ nhiều nguồn điều khiển. Điều này vốn dĩ cần một lớp vật lý chung - rõ ràng nhất là WiFi - và một giao thức truyền thông chung, MQTT.
Yếu tố trung tâm là Nhà môi giới MQTT. Mọi thiết bị được kết nối (tàu, cảm biến, đầu ra…) chỉ được phép giao tiếp thông qua Nhà môi giới và chỉ có thể nhận dữ liệu từ Nhà môi giới.
Trái tim của thiết bị là bộ điều khiển WiFi dựa trên ESP8266, trong khi nhà môi giới MQTT chạy trên Raspberry pi.
Lúc đầu, vùng phủ sóng Wifi được cung cấp bởi bộ định tuyến WiFi và mọi thứ đều được kết nối thông qua mạng không dây.
Có 4 loại thiết bị:
- Bộ điều khiển tàu hỏa: có 2 đầu vào kỹ thuật số, 1 đầu ra kỹ thuật số, 2 đầu ra PWM (để điều khiển 2 động cơ DC riêng lẻ), - Bộ điều khiển cảm biến: có 7 đầu vào kỹ thuật số (cho công tắc đầu vào, cảm biến quang…), - Bộ điều khiển đầu ra: có 8 đầu ra kỹ thuật số (cho công tắc đường sắt…), - Điều khiển từ xa WiFi: có 1 đầu vào mã hóa tăng dần, 1 đầu vào kỹ thuật số (để điều khiển tàu từ xa).
Hệ thống cũng có khả năng hoạt động từ Node-Red (từ máy tính bảng, PC, hoặc điện thoại thông minh…).
Bước 2: Trao đổi và cấu hình dữ liệu MQTT
![Cấu hình và trao đổi dữ liệu MQTT Cấu hình và trao đổi dữ liệu MQTT](https://i.howwhatproduce.com/images/001/image-2097-68-j.webp)
Dựa trên giao thức MQTT, lúc đầu, mọi thiết bị đăng ký một chủ đề nhất định và có thể xuất bản sang một chủ đề khác. Đây là cơ sở giao tiếp của mạng lưới điều khiển tàu.
Câu chuyện giao tiếp này diễn ra thông qua các tin nhắn có định dạng JSON, ngắn gọn và con người có thể đọc được.
Nhìn từ góc độ xa hơn: Mạng có bộ định tuyến WiFi với SSID (tên mạng) và mật khẩu riêng. Mọi thiết bị đều phải biết 2 điều này để truy cập mạng WiFi. Nhà môi giới MQTT cũng là một phần của mạng này, vì vậy để sử dụng giao thức MQTT, mọi thiết bị phải biết địa chỉ IP của nhà môi giới. Và cuối cùng, mọi thiết bị đều có chủ đề riêng để đăng ký và xuất bản tin nhắn.
Trên thực tế, một điều khiển từ xa nhất định sử dụng cùng một chủ đề để xuất bản tin nhắn mà một chuyến tàu nhất định được đăng ký.
Bước 3: Đào tạo bộ điều khiển
![Bộ điều khiển tàu hỏa Bộ điều khiển tàu hỏa](https://i.howwhatproduce.com/images/001/image-2097-69-j.webp)
Để điều khiển một đoàn tàu đồ chơi, về cơ bản chúng ta cần có 3 thứ: nguồn điện, bộ điều khiển hỗ trợ WiFi và thiết bị điện tử điều khiển động cơ.
Nguồn cung cấp phụ thuộc vào kế hoạch sử dụng thực tế: trong trường hợp LEGO, đây là hộp pin Power Functions, trong trường hợp bộ xe lửa quy mô "oldschool" TT hoặc H0, đó là nguồn điện 12V của đường ray.
Bộ điều khiển hỗ trợ WiFi là bộ điều khiển Wemos D1 mini (dựa trên ESP8266).
Thiết bị điện tử điều khiển động cơ là một mô-đun dựa trên TB6612.
Bộ điều khiển tàu có 2 đầu ra PWM được điều khiển riêng. Về cơ bản, một cái được sử dụng để điều khiển động cơ và cái kia được sử dụng để báo hiệu ánh sáng. Có 2 đầu vào cho cảm biến dựa trên tiếp xúc sậy và một đầu ra kỹ thuật số.
Bộ điều khiển chấp nhận tin nhắn JSON thông qua WiFi và giao thức MQTT.
SPD1 điều khiển động cơ, ví dụ: thông báo {"SPD1": -204} được sử dụng để di chuyển động cơ lùi ở mức 80% công suất (giá trị tốc độ tối đa là -255).
SPD2 điều khiển cường độ ánh sáng LED "nhạy cảm với hướng": Thông báo {"SPD2": -255} làm cho đèn LED (lùi) sáng hết công suất.
OUT1 điều khiển trạng thái của đầu ra kỹ thuật số: {"OUT1": 1} bật đầu ra.
Nếu trạng thái của đầu vào thay đổi, bộ điều khiển sẽ gửi một thông báo theo nó: {"IN1": 1}
Nếu bộ điều khiển nhận được một thông báo hợp lệ, nó sẽ thực thi nó và cung cấp phản hồi cho nhà môi giới. Phản hồi là lệnh thực sự được thực thi. Ví dụ: nếu nhà môi giới gửi {"SPD1": 280} thì động cơ đang hoạt động hết công suất nhưng thông báo phản hồi sẽ là: {"SPD1": 255}
Bước 4: Điều khiển tàu LEGO
![Điều khiển tàu LEGO Điều khiển tàu LEGO](https://i.howwhatproduce.com/images/001/image-2097-70-j.webp)
Trong trường hợp tàu LEGO, các sơ đồ có một chút khác biệt.
Nguồn điện trực tiếp đến từ hộp pin.
Cần có một bộ chuyển đổi bước xuống nhỏ để cung cấp 3,5V cho bo mạch Lolin dựa trên ESP8266.
Các kết nối được thực hiện bằng dây kéo dài LEGO 8886, được cắt làm đôi.
Bước 5: Bộ điều khiển từ xa
![Điều khiển từ xa Điều khiển từ xa](https://i.howwhatproduce.com/images/001/image-2097-71-j.webp)
Bộ điều khiển chỉ xuất bản tin nhắn cho tàu (được xác định bởi công tắc BCD).
Bằng cách xoay bộ mã hóa, điều khiển từ xa sẽ gửi tin nhắn {"SPD1": "+"} hoặc {"SPD1": "-"}.
Khi tàu nhận được thông báo "kiểu tăng dần" này, nó sẽ thay đổi giá trị đầu ra PWM của nó bằng 51 hoặc -51.
Bằng cách này, điều khiển từ xa có thể thay đổi tốc độ của tàu trong 5 bước (mỗi hướng).
Nhấn bộ mã hóa tăng dần sẽ gửi {"SPD1": 0}.
Bước 6: Bộ điều khiển cảm biến
![Bộ điều khiển cảm biến Bộ điều khiển cảm biến](https://i.howwhatproduce.com/images/001/image-2097-72-j.webp)
Bộ điều khiển cảm biến được gọi là bộ điều khiển cảm biến đo trạng thái của các đầu vào của nó và nếu bất kỳ đầu vào nào trong số chúng thay đổi, sẽ công bố giá trị đó.
Ví dụ: {"IN1": 0, "IN6": 1} trong ví dụ này 2 đầu vào thay đổi trạng thái cùng một lúc.
Bước 7: Bộ điều khiển đầu ra
![Bộ điều khiển đầu ra Bộ điều khiển đầu ra](https://i.howwhatproduce.com/images/001/image-2097-73-j.webp)
Bộ điều khiển đầu ra có 8 đầu ra kỹ thuật số, được kết nối với mô-đun dựa trên ULN2803.
Nó nhận được tin nhắn thông qua chủ đề đã đăng ký của nó.
Ví dụ: thông báo {"OUT4": 1, "OUT7": 1} bật đầu ra kỹ thuật số 4. và 7..
Bước 8: Raspberry Pi và Bộ định tuyến WiFi
Tôi đã sử dụng bộ định tuyến TP-Link WiFI, vì vậy tôi đã sử dụng bộ định tuyến này làm Điểm truy cập.
Nhà môi giới MQTT là Raspberry Pi có cài đặt Mosquitto.
Tôi sử dụng hệ điều hành Raspbian tiêu chuẩn với MQTT được cung cấp với:
sudo apt-get install mosquitto mosquitto-client python-mosquitto
Bộ định tuyến TP-Link phải được định cấu hình để có địa chỉ đặt trước cho Raspberry, vì vậy sau mỗi lần khởi động lại Pi có cùng địa chỉ IP và mọi thiết bị đều có thể kết nối với nó.
Và đó là nó!
Bước 9: Hoàn thành bộ điều khiển
![Bộ điều khiển đã hoàn thành Bộ điều khiển đã hoàn thành](https://i.howwhatproduce.com/images/001/image-2097-74-j.webp)
![Bộ điều khiển đã hoàn thành Bộ điều khiển đã hoàn thành](https://i.howwhatproduce.com/images/001/image-2097-75-j.webp)
Đây là các bộ điều khiển đã hoàn thành.
Chiếc loko quy mô TT có kích thước nhỏ đến mức một tấm ván Lolin phải được thu hẹp (cắt) để đủ nhỏ để lắp vào đoàn tàu.
Các tệp nhị phân đã biên dịch có thể được tải xuống. Vì lý do bảo mật, phần mở rộng thùng rác đã được thay thế thành txt.
Đề xuất:
Bộ điều khiển Bluetooth dải LED RGB V3 + Đồng bộ hóa âm nhạc + Điều khiển ánh sáng xung quanh: 6 bước (có hình ảnh)
![Bộ điều khiển Bluetooth dải LED RGB V3 + Đồng bộ hóa âm nhạc + Điều khiển ánh sáng xung quanh: 6 bước (có hình ảnh) Bộ điều khiển Bluetooth dải LED RGB V3 + Đồng bộ hóa âm nhạc + Điều khiển ánh sáng xung quanh: 6 bước (có hình ảnh)](https://i.howwhatproduce.com/images/005/image-12702-j.webp)
Bộ điều khiển Bluetooth dải LED RGB V3 + Đồng bộ âm nhạc + Điều khiển ánh sáng xung quanh: Dự án này sử dụng arduino để điều khiển dải đèn LED RGB bằng điện thoại của bạn thông qua bluetooth. Bạn có thể thay đổi màu sắc, làm cho đèn đồng bộ với âm nhạc hoặc làm cho chúng tự động điều chỉnh theo ánh sáng xung quanh
Treo tường cho IPad làm bảng điều khiển tự động hóa tại nhà, sử dụng nam châm điều khiển Servo để kích hoạt màn hình: 4 bước (có hình ảnh)
![Treo tường cho IPad làm bảng điều khiển tự động hóa tại nhà, sử dụng nam châm điều khiển Servo để kích hoạt màn hình: 4 bước (có hình ảnh) Treo tường cho IPad làm bảng điều khiển tự động hóa tại nhà, sử dụng nam châm điều khiển Servo để kích hoạt màn hình: 4 bước (có hình ảnh)](https://i.howwhatproduce.com/images/009/image-24453-j.webp)
Giá treo tường cho iPad làm Bảng điều khiển tự động hóa tại nhà, Sử dụng Nam châm điều khiển Servo để Kích hoạt màn hình: Gần đây, tôi đã dành khá nhiều thời gian để tự động hóa mọi thứ trong và xung quanh nhà mình. Tôi đang sử dụng Domoticz làm ứng dụng Tự động hóa tại nhà của mình, hãy xem www.domoticz.com để biết thêm chi tiết. Trong tìm kiếm của tôi cho một ứng dụng bảng điều khiển hiển thị tất cả thông tin Domoticz
ESP8266 RGB LED STRIP Điều khiển WIFI - NODEMCU làm điều khiển từ xa hồng ngoại cho dải đèn Led được điều khiển qua Wi-Fi - Điều khiển điện thoại thông minh RGB LED STRIP: 4 bước
![ESP8266 RGB LED STRIP Điều khiển WIFI - NODEMCU làm điều khiển từ xa hồng ngoại cho dải đèn Led được điều khiển qua Wi-Fi - Điều khiển điện thoại thông minh RGB LED STRIP: 4 bước ESP8266 RGB LED STRIP Điều khiển WIFI - NODEMCU làm điều khiển từ xa hồng ngoại cho dải đèn Led được điều khiển qua Wi-Fi - Điều khiển điện thoại thông minh RGB LED STRIP: 4 bước](https://i.howwhatproduce.com/images/001/image-2218-28-j.webp)
ESP8266 RGB LED STRIP Điều khiển WIFI | NODEMCU làm điều khiển từ xa hồng ngoại cho dải đèn Led được điều khiển qua Wi-Fi | Điều khiển bằng điện thoại thông minh RGB LED STRIP: Xin chào các bạn trong hướng dẫn này, chúng ta sẽ học cách sử dụng gật đầu hoặc esp8266 làm điều khiển từ xa IR để điều khiển dải LED RGB và Nodemcu sẽ được điều khiển bằng điện thoại thông minh qua wifi. Vì vậy, về cơ bản bạn có thể điều khiển DÂY CHUYỀN LED RGB bằng điện thoại thông minh của mình
Tự làm bộ điều khiển bay điều khiển đa hệ điều khiển Arduino: 7 bước (có hình ảnh)
![Tự làm bộ điều khiển bay điều khiển đa hệ điều khiển Arduino: 7 bước (có hình ảnh) Tự làm bộ điều khiển bay điều khiển đa hệ điều khiển Arduino: 7 bước (có hình ảnh)](https://i.howwhatproduce.com/images/003/image-7287-j.webp)
Tự làm bộ điều khiển máy bay đa năng điều khiển Arduino: Dự án này là tạo ra một bảng logic máy bay không người lái đa năng linh hoạt nhưng tùy chỉnh dựa trên Arduino và Multiwii
Điều khiển các thiết bị điện của bạn bằng Điều khiển từ xa Tv (Điều khiển từ xa) với Màn hình nhiệt độ và độ ẩm: 9 bước
![Điều khiển các thiết bị điện của bạn bằng Điều khiển từ xa Tv (Điều khiển từ xa) với Màn hình nhiệt độ và độ ẩm: 9 bước Điều khiển các thiết bị điện của bạn bằng Điều khiển từ xa Tv (Điều khiển từ xa) với Màn hình nhiệt độ và độ ẩm: 9 bước](https://i.howwhatproduce.com/images/003/image-8087-24-j.webp)
Điều khiển thiết bị điện của bạn bằng Điều khiển từ xa Tv (Điều khiển từ xa) Có Hiển thị nhiệt độ và độ ẩm: xin chào, tôi là Abhay và đây là blog đầu tiên của tôi về Các thiết bị điện và hôm nay tôi sẽ hướng dẫn bạn cách điều khiển các thiết bị điện bằng điều khiển từ xa bằng cách xây dựng cái này dự án đơn giản. cảm ơn atl lab đã hỗ trợ và cung cấp tài liệu