สารบัญ:

Smart B.A.L (กล่องจดหมายที่เชื่อมต่อ): 4 ขั้นตอน
Smart B.A.L (กล่องจดหมายที่เชื่อมต่อ): 4 ขั้นตอน

วีดีโอ: Smart B.A.L (กล่องจดหมายที่เชื่อมต่อ): 4 ขั้นตอน

วีดีโอ: Smart B.A.L (กล่องจดหมายที่เชื่อมต่อ): 4 ขั้นตอน
วีดีโอ: วิธีการใช้งาน Smart Watch 2024, พฤศจิกายน
Anonim
Smart BAL (กล่องจดหมายที่เชื่อมต่อ)
Smart BAL (กล่องจดหมายที่เชื่อมต่อ)

คุณเบื่อที่จะตรวจสอบทุกครั้งที่กล่องจดหมายของคุณในขณะที่ไม่มีอะไรอยู่ข้างใน คุณต้องการทราบว่าคุณได้รับจดหมายหรือพัสดุระหว่างการเดินทางหรือไม่ ดังนั้นกล่องจดหมายที่เชื่อมต่อจึงเหมาะสำหรับคุณ มันจะแจ้งให้คุณทราบหากบุรุษไปรษณีย์ได้ฝากจดหมายหรือพัสดุโดยตรงบนสมาร์ทโฟนของคุณผ่านอีเมล ด้วยเทคโนโลยีล่าสุด LORAWAN ที่ผลิตในฝรั่งเศส เรากำลังดำเนินการทีละขั้นตอนในการออกแบบต้นแบบตลอดคำแนะนำนี้

ขั้นตอนที่ 1: อุปกรณ์

อุปกรณ์
อุปกรณ์

ภาษาที่ใช้: C/C++

ความรู้พื้นฐานด้านดิจิตอลอิเล็คทรอนิคส์

ข้อกำหนดด้านฮาร์ดแวร์:

Grove - 3-Axis Digital Gyro:

ชุดโมดูล sigfox พร้อมเสาอากาศ:

ปุ่มสุ่ม (เลือกสิ่งที่คุณต้องการ)

Nucleo F030R8:

ข้อกำหนดของซอฟต์แวร์:

คอมพิวเตอร์ที่มีเบราว์เซอร์ที่ดีเพื่อทำงานร่วมกับคอมไพเลอร์ Mbed

ขั้นตอนที่ 2: เตรียมอุปกรณ์ของคุณ

เตรียมอุปกรณ์ของคุณ
เตรียมอุปกรณ์ของคุณ

ขั้นแรก เราต้องเชื่อมต่อโมดูลทั้งหมดเข้ากับชิป

จ่ายไฟให้กับโมดูล Sigfox และไจโรสโคปด้วยแรงดัน 3.3 โวลต์!จากนั้นเชื่อมต่อสาย UART กับโมดูล Sigfox (PA_9, PA_10) และสายไฟ I2C เข้ากับไจโรสโคป (PB_10; PB_11) เชื่อมต่อปุ่มด้วยหมุด PB_3 เมื่อเสร็จแล้ว คอมไพล์โค้ดด้านล่าง

คุณสามารถทดสอบต้นแบบโดยวางไจโรบนกล่องจดหมายและรับค่าบางอย่างที่เกี่ยวข้องกับการเคลื่อนไหวและตรวจสอบว่าเป็นพัสดุที่ฝากไว้หรือจดหมาย

#รวม "mbed.h" #รวม "ITG3200.h" //--------------------------------- -- // การกำหนดค่า Hyperterminal // 9600 บอด, ข้อมูล 8 บิต, ไม่มีความเท่าเทียมกัน //------------------------------------ ------ ซีเรียลพีซี (SERIAL_TX, SERIAL_RX); อนุกรม sigfox (PA_9, PA_10, NULL, 9600); InterruptIn bouton(PB_3); ไจโร ITG3200 (PB_11, PB_10); แอพ int ผันผวน; ข้อมูลจริง=0; จับเวลา t; แบตเตอรี่ AnalogIn (A3); AnalogIn ref_batt (ADC_VREF); เป็นโมฆะ lol() { pc.printf("appui\r\n"); แอพ=1; } /* void batt() { pc.printf("batterie faible !\r\n"); }*/ int main() { int x, y, z; //กำหนดแบนด์วิดธ์สูงสุด gyro.setLpBandwidth (LPFBW_42HZ); ถ่านบัฟเฟอร์[20]; bouton.fall(&lol); bouton.mode (ดึงลง); //batterie_faible.rise(&batt); //batterie_faible.mode(ดึงลง); pc.printf("เริ่มต้น\r\n"); ในขณะที่ (1) { แอป = 0; x = gyro.getGyroX(); y = gyro.getGyroY(); z = gyro.getGyroZ(); if(x > 5000) { t.start(); pc.printf("นาทีเปิดตัว\r\n"); ในขณะที่(t.read() <10); pc.printf("อุณหภูมิครีบ\r\n"); //pc.printf("app= %d\r\n", แอป); if(app == 0) { sigfox.printf("AT$SF=636f757272696572\r\n"); // colis: 636f6c69732e202020 sigfox.scanf("%s", บัฟเฟอร์); pc.printf("%s\r\n", บัฟเฟอร์); } pc.printf("fin if\r\n"); t.stop(); t.รีเซ็ต(); } /* if(batterie.read() <= (2.8*ref_batt.read()/1.23)) pc.printf("batterie faible\r\n"); sigfox.printf("AT$SF=636f757272696572\r\n"); // colis: 636f6c69732e202020 รอ (10); sigfox.printf("AT$P=1"); รอ(10); sigfox.printf("AT$P=0\r\n");*/ } }

ขั้นตอนที่ 3: การประกอบ PCB

ต้นแบบก่อนหน้านี้มีขนาดใหญ่เกินไปที่จะวางไว้บนกล่องจดหมาย นี่คือไฟล์ Gerber เพื่อพิมพ์วงจรและประกอบส่วนประกอบของคุณ

ขั้นตอนที่ 4: เว็บไซต์ส่วนหลัง

เว็บไซต์ส่วนหลัง
เว็บไซต์ส่วนหลัง
เว็บไซต์ส่วนหลัง
เว็บไซต์ส่วนหลัง

เราได้ใช้สถาปัตยกรรมแบ็กเอนด์ของเราบน IBM Cloud (IBM IoT Watson Platform และ NodeRED) และตามคำขอ API REST IBM Cloud ถูกใช้เพื่อจัดการการสื่อสารระหว่างส่วนต่างๆ ของระบบของเรา ดังที่คุณเห็นในโฟลว์ NodeRED ของเรา เราควบคุมคำขอทั้งหมดที่ได้รับจาก Sigfox API (ที่ส่งข้อความจากอุปกรณ์ของเรา) และจากเว็บไซต์ Wix ของเรา (สำหรับการลงทะเบียนอุปกรณ์ใหม่) นอกจากนี้ ระบบคลาวด์ยังมีหน้าที่ส่งอีเมลแจ้งเตือนไปยังไคลเอนต์และลงทะเบียนลูกค้าใหม่ซึ่งข้อมูลจะถูกเก็บไว้ในฐานข้อมูลบนคลาวด์ของเรา (MongoDB) ดังนั้นโดยทั่วไป NodeRED จะจัดการคำขอ API REST และการสืบค้นฐานข้อมูล (INSERT และ SELECT) เพื่อให้มั่นใจว่าการแจ้งเตือนที่ถูกต้องจะถูกส่งไปยังไคลเอนต์ที่ถูกต้องตรงเวลา

แนะนำ: