Агуулгын хүснэгт:

UCL-IIOT-Мэдээллийн сан, зангилааны улаан дохиоллын систем: 7 алхам
UCL-IIOT-Мэдээллийн сан, зангилааны улаан дохиоллын систем: 7 алхам

Видео: UCL-IIOT-Мэдээллийн сан, зангилааны улаан дохиоллын систем: 7 алхам

Видео: UCL-IIOT-Мэдээллийн сан, зангилааны улаан дохиоллын систем: 7 алхам
Видео: Дж. Уорнер Уоллес: Христианство, мормонизм и атеизм-что... 2024, Арваннэгдүгээр
Anonim
UCL-IIOT-Мэдээллийн сан, зангилааны улаан дохиоллын систем
UCL-IIOT-Мэдээллийн сан, зангилааны улаан дохиоллын систем
UCL-IIOT-Мэдээллийн сан, зангилааны улаан дохиоллын систем
UCL-IIOT-Мэдээллийн сан, зангилааны улаан дохиоллын систем

Энэхүү бүтээн байгуулалтын зорилго нь Arduino-ийг Node-red болон мэдээллийн сантай холбох талаар заахад оршдог тул та өгөгдлийг бүртгэж, дараа нь ашиглах зорилгоор цуглуулж болно.

Энэ бүтцийг хийхийн тулд би 5 өгөгдлийн дугаарыг гаргадаг энгийн arduino дохиоллын системийг ашигладаг бөгөөд тус бүр нь таслалаар тусгаарлагдсан байдаг.

Ийм хэмжээний өгөгдөл байх шаардлагагүй бөгөөд програм нь ямар ч байж болно.

Хамгийн чухал хэсэг нь өгөгдлийг энэ дэлгэцийн агшинд үзүүлсэн шиг таслалаар тусгаарласан явдал юм.

Жишээлбэл, гаралт нь "324, 0, 0, 1, 1" шиг харагдаж болно.

(дууссан програмчлал, arduino -ийг бүтээх зааврыг энэ гарын авлагын доод хэсэгт холбосон болно)

Алхам 1: Node-red-ийг эхлүүлэх

Node-red-ээс эхэлж байна
Node-red-ээс эхэлж байна

Энэхүү гарын авлагад бид Node-red-ийг аль хэдийн суулгасан гэж үзэж байгаа боловч энэ төсөлд ажиллахад шаардлагатай нэмэлт палитрууд байдаг.

"Manage Palette" товчлуурыг олоод дараах палитруудыг суулгана уу.

  • зангилааны улаан самбар
  • зангилаа-улаан-зангилаа-mysql
  • зангилаа-улаан-зангилаа-arduino
  • зангилаа-улаан-зангилаа-цуваа порт

Энэ нь зангилааны улаан товчлуурын цэсний хажуу талд шинэ палитруудыг харуулах ёстой.

Алхам 2: Мэдээллийг зангилааны улаанаар хуваах

Мэдээллийг зангилаа улаан өнгөөр хуваах
Мэдээллийг зангилаа улаан өнгөөр хуваах

Node-red ажиллахад бэлэн болсон тул бид өгөгдлөө тусад нь хуваахаас эхлэх хэрэгтэй.

Тиймээс бид тэдгээрийг Arduino кодын дотор таслалаар тусгаарлахаар шийдсэн юм.

Эхлээд зүүн талын самбар дээр байрлах Arduino оролтын зангилааг буулгаж эхэлье.

Та үүнийг зөв цуваа (Уурхайд COM4 ашигладаг) порт болон Baud хурдтай эсэхийг шалгах хэрэгтэй (миний програмд би 9600 baud rate ашигладаг)

Хэрэв зөв тохируулсан бол энэ нь холбогдсон гэж хэлэх ёстой.

Дараа нь бид Javascript функцын блок үүсгэж, Arduino оролтын зангилааны дараа холбоно уу. Энэ блок нь Javascript програмчлах боломжийг олгодог бөгөөд энд өгөгдлөө таслал бүрт хуваах код бичдэг.

Энэ функцын блок дээр би 5 кодыг дараах кодыг ашиглан хуваасан.

var m1 = {сэдэв: "гэрэл1", ачаалал: msg.payload.split (",") [0]}; var m2 = {сэдэв: "light2", ачаалал: msg.payload.split (",") [1]}; var m3 = {сэдэв: "light3", ачаалал: msg.payload.split (",") [2]}; var m4 = {сэдэв: "миллис", ачаалал: msg.payload.split (",") [3]}; var m5 = {сэдэв: "onoff", ачаалал: msg.payload.split (",") [4]}; өгөөж [m1, m2, m3, m4, m5];

(шаардлагатай бол кодыг өөрчлөх)

Зангилааг 5 гаралт (эсвэл түүнтэй адилтгах) болгож тохируулсан эсэхийг шалгаарай.

Дэлгэцийн агшинд харуулснаар бид одоо дибаг хийх цэг болон текстийн хяналтын самбарын зангилааг холбосон 5 гаралттай болсон. Энэ нь UI дээр үзэх шаардлагатай үед ашигтай байх болно.

Алхам 3: Wampserver -ийн мэдээллийн сан

Wampserver -ийн мэдээллийн сан
Wampserver -ийн мэдээллийн сан

Манай мэдээллийн сан ажиллахын тулд та Wampserver -ийг суулгаж, ногоон дүрс хэлбэрээр харуулсны дараа (бүх үйлчилгээг эхлүүлсний дараа) "phpMyAdmin" -ийг нээх хэрэгтэй бөгөөд энэ нь таныг нэвтрэх дэлгэц рүү оруулах болно. Өмнө нь үүнийг өөрчилсөн бол хэрэглэгчийн нэр, нэвтрэх хэсэгт "root" оруулна уу.

Phpmyadmin товчлуурыг зүүн талын багаж хэрэгслийн доор дарахад өгөгдлийн сангийн цэс нээгдэх бөгөөд энэ нь дээрх зурагт үзүүлсэн шиг харагдаж байна.

Шинэ мэдээллийн сан үүсгэж, түүнийгээ төсөлтэй холбоотой нэрээр нэрлээрэй, миний уурхайг "дохиоллын систем" гэж нэрлэнэ (эдгээр нэр том үсгийг томъёолох болно)

Тэр мэдээллийн баазын дор шинэ хүснэгт үүсгээд миний нэрийг "alarmdata" гэж нэрлэ.

энэ нь "latin1_swedish_ci" -г ашиглахыг хүсч байгаа эсэхийг асуух болно, гэхдээ бид үүнийг хэвээр нь хадгална.

Одоо та 6 хүснэгт үүсгэж байна (бидэнд байгаа өгөгдлөөс 1 илүү)

Эхний хүснэгтэд "урт текст" өгөгдлийн төрлийг ашиглах шаардлагатай байна.

бусад мэдээллийн сан "дунд текст" -ийг ашигладаг.

Тэднийг нэрлэхээ мартуузай. (анхны өгөгдлийн санг "цаг" гэж нэрлэх ёстой.

Алхам 4: Мэдээллийн сан

Мэдээллийн сан
Мэдээллийн сан

Wampserver мэдээллийн сан иймэрхүү харагдах ёстой.

(гэхдээ бодит мэдээлэл байхгүй байгаа тул бид хараахан олж чадаагүй байна)

Алхам 5: Wampserver рүү улаан өнгөтэй

Wampserver рүү улаан өнгөтэй
Wampserver рүү улаан өнгөтэй

Одоо бид arduino -аас гаргаж буй өгөгдлөө Wampserver рүүгээ оруулахыг хүсч байна.

Өөр Javascript функцын блок үүсгэж, үүнийг манай arduino оролтын зангилаанд холбоно уу.

Энэ скрипт блок дээр бид өгөгдлөө дахин хуваасан боловч мэдээллийн санд оруулсан болно.

var data = msg.payload.split (","); var Green1 = өгөгдөл [0]; var Green2 = өгөгдөл [1]; var Сэрүүлэг = өгөгдөл [2]; var Millis = өгөгдөл [3]; var IsActive = өгөгдөл [4]; var out = "INSERT INTO alarmsystem.alarmdata (Time, Green1, Green2, Alarm, Millis, IsActive) VALUES ('"+new Date (). toISOString (). slice (0, 19).rease (' T ',') ')+"', '"+Green1+"', '"+Green2+"', '"+Alarm+"', '"+Millis+"', '"+IsActive+"')"; msg.topic = гарах; msg буцах;

Би "INSERT INTO alarmsystem.alarmdata" гэж оруулсныг анхаарна уу, энэ бол бидний мэдээллийн сан, хүснэгтэд өгсөн нэр бөгөөд үүнд өөрийн мэдээллийн баазад өгсөн нэрээ яг таг бичээрэй.

Одоо Javascript блокыг дибаг хийх цэг, мөн зүүн талд хадгалах палитрын доор байрлах "mysql" зангилааг холбоно уу.

mysql блокийн доор та үүнийг мэдээллийн сангийнхаа "дохиоллын систем" гэж нэрлэнэ.

хэрэглэгчийг "root" болгон өөрчлөх (бидний сервер рүү нэвтрэхэд ашигладаг нэр)

хост, порт, мэдээллийн санг аль хэдийн бөглөсөн байх ёстой:

Хөтлөгч: 127.0.0.1

Боомт: 3306

Мэдээллийн сан: дохиоллын систем

Хэрэв бүх зүйл зөв хийгдсэн бол өөрчлөлтийг хийсний дараа үүнийг холбох ёстой.

Мэдээллийн сан нь таны өгөгдлийг Arduino -аас шууд бүртгэдэг болохыг та харах ёстой.

Алхам 6: Wampserver-ээс Node-red хүртэл өгөгдлийг ашиглах

Wampserver-ээс Node-red хүртэлх өгөгдлийг ашиглах
Wampserver-ээс Node-red хүртэлх өгөгдлийг ашиглах
Wampserver-ээс Node-red хүртэлх өгөгдлийг ашиглах
Wampserver-ээс Node-red хүртэлх өгөгдлийг ашиглах

Эцсийн сунгалтын хувьд бид хадгалсан өгөгдлөө аваад зангилааны улаан хэсэгт буцааж оруулах боломжтой эсэхийг харахыг хүсч байна.

"Тарих" зангилаа байрлуулж эхэл

Энэ зангилааны сэдвийн доор бид кодыг оруулна уу: SELECT*FROM alarmsystem.alarmdata

Энэ нь бид үүнийг дарахад манай мэдээллийн санг олох боломжтой болно.

Тарилгын зангилааг өмнөх алхам дээр хийсэн шиг "mysql" шинэ зангилаа руу холбоно уу.

Mysql зангилааг дибаг хийх цэг болон хяналтын самбараас олсон загварын зангилаатай холбоно уу.

Загварын зангилаа нь мэдээллийн баазаас өгөгдлийг гаргах явцад харуулахын тулд бидний шинэчлэх хүснэгт байх болно.

Дээрх дэлгэцийн агшинд үзүүлсэн кодыг оруулна уу (шаардлагатай бол өөрчилнө үү) энэ нь одоо бидний зангилааны улаан интерфэйс дэх өгөгдлийн хүснэгтийг харуулах ёстой.

Мөн бид UI -ээс хүснэгтийг шинэчлэхийн тулд хяналтын самбарын товчлуурыг нэмж болно.

Товчлуурын зангилааг үүсгэж эхлээрэй.

товчлуурын зангилааг Javascript функцын блоктой холбоно уу.

функцын блок дээр бид дараах кодыг оруулна.

msg.topic = "Green1 DESC LIMIT 20 -оос дохио өгөгдлийг SELECT * FROM"; буцах msg;

(Green1 нь хүснэгтийн өгөгдлийн анхны хувьсагч юм)

дараа нь энэ функцын блокыг энэ алхам дээр өмнө нь хийсэн бидний mysql зангилааны оролттой холбох хэрэгтэй.

Алхам 7: Дуусгах

Эцсийн болгож байна
Эцсийн болгож байна

Одоо бидний UI нь өгөгдлийнхөө шууд шинэчлэлт, серверээс авсан өгөгдөл бүхий хүснэгтийг агуулсан байх ёстой.

Энэ нь бид Arduino, UI дээр суурилсан програм ба мэдээллийн сангийн хооронд холболт үүсгэсэн гэсэн үг юм.

Хэрэв та миний Arduino дохиоллын систем хэрхэн ажилладаг талаар сонирхож байгаа бол би үүнийг хэрхэн програмчилж, тохируулж байгааг тайлбарласан баримт бичгийг нэмж оруулсан болно.

Зангилаан улаан програмчлалын бүрэн экспорт.

Зөвлөмж болгож буй: