สารบัญ:

IoT ด้วย NodeMCU และ MQTT: 4 ขั้นตอน
IoT ด้วย NodeMCU และ MQTT: 4 ขั้นตอน

วีดีโอ: IoT ด้วย NodeMCU และ MQTT: 4 ขั้นตอน

วีดีโอ: IoT ด้วย NodeMCU และ MQTT: 4 ขั้นตอน
วีดีโอ: เรียนรู้ MQTT และควบคุมอุปกรณ์ IoTs จากทุกมุมโลกด้วย MQTT เข้าใจง่าย #mqtt 2024, พฤศจิกายน
Anonim
Image
Image
IoT ด้วย NodeMCU และ MQTT
IoT ด้วย NodeMCU และ MQTT

[En] ครั้งหนึ่งสำหรับงานอุตสาหกรรม ฉันจำเป็นต้องสร้าง PCB ที่มีหน้าสัมผัสแห้ง 8 ตัว เล่นกับ MQTT เล็กน้อย และตัดสินใจปรับให้เข้ากับการทำงานโดยใช้ NodeMCU esp-f v4 เพื่อให้เป็นวิธีง่ายๆ ในการสร้างระบบอัตโนมัติภายในบ้านราคาประหยัด

[Pt-Br] Certa vez para uma aplicação industrial eu precisioni fazer uma PCB com 8 ติดต่อ secos. Brincando um pouco com MQTT resolvi adaptá-la para que funcionasse ใช้ NodeMCU esp-f v4. A fim de torná-la uma forma simples de se fazer automações residenciais de baixo custo

เสบียง

สำหรับแกนหลัก/ กระบวนการ Para o:1- ESP12-F DEVKIT V4 (NodeMCU เล็กกว่า) แต่คุณสามารถปรับวงจรให้เป็น ESP12-E V3 ได้

สำหรับบอร์ด / สำหรับ PCB:qty - part

1- 10x10 บอร์ดเวอร์จินสำหรับ PCB

8- LED 3mm (สำหรับการส่งสัญญาณ)

ขั้วต่อ 1- kre-2t (แรงดันเข้า)

ขั้วต่อ 8- kre-3t (หน้าสัมผัสเอาต์พุตแห้ง)

ตัวเก็บประจุเซรามิก 2- 100n

ตัวเก็บประจุเซรามิก 1- 10n

1- 10u ตัวเก็บประจุไฟฟ้า

2- 100u Eletrolitc ตัวเก็บประจุ

1- 1N4004 ไดโอด (หลักฐานโง่)

8- 1N4148 ไดโอด (เต็มใจฟรี)

ตัวต้านทาน 8- 500 1/4w (สำหรับไฟ LED)

ตัวต้านทาน 8- 680 1/4w (สำหรับออปโตคัปเปลอร์)

ตัวต้านทาน 11- 10k 1/4w

1- 7805 (+ ตัวควบคุมแรงดันไฟฟ้าสำหรับ nodeMCU)

8- BC548 npn ทรานซิสเตอร์

รีเลย์ 8- 12v (No-c-Nc)

8- PC817 ออปโตคัปเปลอร์

ส่วนหัวพินตัวเมีย 2-15x1 (ถึง nodeMCU)

หัวต่อพิน 1- 2 พิน (สำหรับอนาล็อกเข้า)

1- ปุ่มกด (สำหรับ Digital in)

[th]ความรู้เล็กน้อยในการผลิต PCB รวมถึงความรู้เล็กน้อยเกี่ยวกับภาษาโปรแกรมและอินเทอร์เฟซ Arduino IDE สำหรับ NodeMCU และ Google เล็กน้อยก็ค้นหาความรู้ภายนอก

[Pt-Br]Um pouco de conhecimento em fabricação de PCB, além de um pequeno conhecimento de linguagens de programação e da interface da IDE do Arduíno สำหรับ NodeMCU. E um pouco de pesquisas ไม่มี google para conhecimentos externos.

ขั้นตอนที่ 1: กระดาน

Image
Image
กระดาน
กระดาน

ไฟล์เหล่านี้สร้างขึ้นใน cadsoft eagle 7.5 แต่ต้องเข้ากันได้กับ autodesk eagle คุณสามารถแก้ไขให้พอดีกับ esp12-E

Estes arquivos foram feitos no cadsoft eagle 7.5, ใช้งานร่วมกันได้กับ autodesk eagle เนื้อเพลง pode editá-lo a fim de encaixar esp12-E.

ขั้นตอนที่ 2: รหัส

link para o projeto no github/ github project link: github[En] สำหรับโค้ด คุณต้องแก้ไขพารามิเตอร์บางตัวเพื่อให้เหมาะกับโปรเจ็กต์ของคุณมากขึ้น: -ชื่ออินเทอร์เน็ตของ wi-fi ของคุณ (SSID line 7);

- รหัสผ่าน (รหัสผ่านบรรทัดที่ 8);

- ตำแหน่งที่กำหนดค่านายหน้าของคุณ ในกรณีของฉัน ฉันใช้นายหน้าภายใน Orange-pi หนึ่งที่ทำงาน OpenHab2 ดังนั้นจึงเป็น IP ในบรรทัดที่ 11 แต่ถ้าคุณใช้นายหน้าออนไลน์ฟรี เช่น ยุงคราส (https: / / mosquitto.org/) คุณสามารถใส่ URL ในวงเล็บแทน IP ได้ ระวังว่าโบรกเกอร์ออนไลน์ฟรีมีปัญหาด้านความปลอดภัย

-ในบรรทัดที่ 12 พอร์ตที่คุณเข้าถึงโบรกเกอร์นี้ โดยปกติคือ 1883 หรือ 8883

-หลังจากนั้น ID_MQTT จะยังคงอยู่ ซึ่งจะเป็นชื่อที่คุณจะใช้สำหรับลูกค้าของคุณในบรรทัดที่ 20

- ในบรรทัดที่ 21 และ 22 หัวข้อที่เราจะส่งข้อมูลตามลำดับ pin d8 และ An0 (สูงสุด 1v);

- หลังจากนี้ เรามีเฉพาะหัวข้อการสมัครรับข้อมูลที่จะควบคุมเอาต์พุต d0 ถึง d7 แต่ละหัวข้อจะอยู่ภายใน char array ในบรรทัดที่ 38 คุณสามารถเปลี่ยนได้ แต่ในบรรทัด 107 เราจะทำการเปรียบเทียบระหว่าง ID_MQTT กับหัวข้อเหล่านี้ ตรวจสอบ หาก ID_MQTT อยู่ระหว่างอักขระตัวที่สองและตัวที่เจ็ดของหัวข้อที่ได้รับ

[Pt-Br] Para o código, você deve editar alguns parâmetros para melhor servir aos seus projetos:

-O o nome da internet ทำ seu wi-fi (SSID linha 7);

-A senha (รหัสผ่าน linha 8);

-O นายหน้า onde seu ท้องถิ่น está กำหนดค่า, ไม่มีตัวเลือก caso utilizo um นายหน้า dentro de uma orange-pi หนึ่ง rodando OpenHab2 por isso é o IP na linha 11, mas se você usar นายหน้าซื้อขายแร่ออนไลน์ como o ยุง da eclipse (https:// mosquitto.org/) você pode colocar a URL ที่เข้าร่วม parênteses, tome cuidado que โบรกเกอร์ ฟรี ออนไลน์ possuem ปัญหา de segurança;

-Na linha 12 นายหน้า porta pela qual você acessa este, geralmente 1883 ou 8883;

-Depois disso sobram o ID_MQTT que será o nome que você usará para o seu ลูกค้า na linha 20;

-Na linha 21 e 22, os tópicos onde vamos enviar as informações comparisonivamente pino d8 e An0(สูงสุด 1v);

-após isto temos apenas os tópicos de subscrição que controlarão as saídas d0 a d7, cada tópico esta dentro do array de char na linha 38. Você pode alterá-los, mas na o linha 107 fazemos entre com เปรียบเทียบ se o ID_MQTT ทางเข้า o segundo eo sétimo caractere do tópico recebido

ขั้นตอนที่ 3: ฉันจะรู้ได้อย่างไรว่าสิ่งนี้ใช้ได้

ฉันจะรู้ได้อย่างไรว่าสิ่งนี้โอเค?
ฉันจะรู้ได้อย่างไรว่าสิ่งนี้โอเค?
ฉันจะรู้ได้อย่างไรว่าสิ่งนี้โอเค?
ฉันจะรู้ได้อย่างไรว่าสิ่งนี้โอเค?

[En] คุณสามารถกำหนดค่าไคลเอ็นต์ MQTT อื่นเพื่อเผยแพร่หัวข้อที่จะสมัครรับข้อมูลจากอุปกรณ์ของคุณ และในทางกลับกัน ในรูปภาพที่เรามีตัวอย่าง อย่างแรกคือไคลเอนต์ที่กำหนดค่าไว้ภายใน OpenHab2 ส่วนที่สองคือซอฟต์แวร์กรรมสิทธิ์ที่เรียกว่า MQTT. FX ที่คุณใช้ในโบรกเกอร์เดียวกันกับอุปกรณ์ของคุณ และสามารถเผยแพร่และรับเพย์โหลดในหัวข้อที่กำหนดค่าไว้

[Pt-Br]Você pode configurar outro cliente MQTT, para publicar os tópicos que seu dispositivo irá estar inscrito และในทางกลับกัน ตัวอย่างของรูปภาพที่มีอยู่, o ไพรม์โร é ม ไคลเอนต์ e กำหนดค่า dentro ทำ OpenHab2, หรือ ซอฟต์แวร์ próprio chamado MQTT. FX que você conceta ไม่มี mesmo นายหน้า que seu dispositivo e consegue publicar e receber payloadsfigurs กำหนดค่าตามรูปแบบ

ขั้นตอนที่ 4: สิ้นสุด

ตอนจบ
ตอนจบ

ฉันหวังว่าสิ่งนี้จะช่วยได้ โดยเฉพาะอย่างยิ่งผู้ที่ต้องการทำระบบอัตโนมัติภายในบ้านด้วย IoT และค้นหาแอปพลิเคชันขนาดเล็กและสวิตช์เอาต์พุตเพียงไม่กี่ตัว ดังนั้นคุณจึงสามารถทำระบบอัตโนมัติจำนวนมากได้ในราคาประหยัด หากคุณมีการเปลี่ยนแปลง โปรดแบ่งปันเพื่อให้คนอื่นสามารถดำเนินการได้ สุขภาพและเสรีภาพ! (NS)

Espero que tenha ajudado, principalmente quem busca fazer automação residencial com IoT e encontra apenas pequenas aplicações e poucos chaves de saída, แบบฟอร์ม pode-se fazer muitas automações com baixo custo Se você tem alterações, por favor compartilhe para que mais pessoas possam executar. อ้างอิง ซาอูเด อี ลิเบอร์ดาด! (NS)

แนะนำ: