สารบัญ:
- ขั้นตอนที่ 1: ตั้งค่า Arduino
- ขั้นตอนที่ 2:
- ขั้นตอนที่ 3: Arduino Serial Monitor
- ขั้นตอนที่ 4: เข้าสู่ระบบ Sigfox
- ขั้นตอนที่ 5: หน้าอุปกรณ์ Sigfox
- ขั้นตอนที่ 6: Sigfox Callback
- ขั้นตอนที่ 7: Sigfox โทรกลับใหม่
- ขั้นตอนที่ 8: Sigfox สร้างประเภทการโทรกลับ
- ขั้นตอนที่ 9: Sigfox ไปยัง AWS CloudFormation
- ขั้นตอนที่ 10: การสร้างสแต็ค AWS 1
- ขั้นตอนที่ 11: การสร้าง AWS Stack 2
- ขั้นตอนที่ 12: ตำแหน่งหมายเลขบัญชี AWS
- ขั้นตอนที่ 13: ตำแหน่งหมายเลขบัญชี AWS
- ขั้นตอนที่ 14: การสร้าง AWS Stack
- ขั้นตอนที่ 15: การสร้างสแต็ค AWS รอบชิงชนะเลิศ
- ขั้นตอนที่ 16: รายละเอียดกอง AWS
- ขั้นตอนที่ 17: รายละเอียดกอง AWS 2
- ขั้นตอนที่ 18: การสร้างการโทรกลับ Sigfox รอบชิงชนะเลิศ
- ขั้นตอนที่ 19: ตรวจสอบการสร้างการโทรกลับ Sigfox
- ขั้นตอนที่ 20: การสร้างตาราง DynamoDB ของ AWS
- ขั้นตอนที่ 21: AWS- การสร้างตาราง DynamoDB 2
- ขั้นตอนที่ 22: การเข้าถึง AWSIot Console
- ขั้นตอนที่ 23: กฎการสร้าง AWS DynamoDB
- ขั้นตอนที่ 24: AWS DynamoDB เพิ่มการดำเนินการ
- ขั้นตอนที่ 25: AWS DynamoDB เพิ่มการดำเนินการ 2
- ขั้นตอนที่ 26:
- ขั้นตอนที่ 27: การสร้างบทบาท AWS DynamoDB
- ขั้นตอนที่ 28: สิ้นสุดการสร้างบทบาท AWS DynamoDB
- ขั้นตอนที่ 29:
วีดีโอ: SigFox ถึง AWS: 29 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:07
I. บทนำ
1.ผู้เขียน
ฉันชื่อ Hooi Yong Hua และฉันมาจาก Singapore Polytechnic อนุปริญญาสาขาวิศวกรรมคอมพิวเตอร์
ฉันเป็นส่วนหนึ่งของกลุ่มที่ประกอบด้วยสมาชิก 3 คน; Low Jun Qian, Takuma kabeta และตัวฉันเอง
คำแนะนำนี้เป็นส่วนหนึ่งของโครงการเพื่อส่งข้อมูลจากเซ็นเซอร์ผ่านอินเทอร์เน็ตไปยังอุปกรณ์ปลายทางและการดำเนินการ
การวิเคราะห์ธุรกิจ ผู้ดูแลโครงการของเราคือ Mr Teo Shin Jen
2. วัตถุประสงค์
ส่งข้อมูลอะนาล็อกจากเซ็นเซอร์ (DS18B20) โดยใช้ Arduino พร้อม Sigfox Shield ทางอินเทอร์เน็ตไปยังเซิร์ฟเวอร์ sigfox จากนั้นส่งข้อมูลไปยัง AWS (Amazon Web Services Cloud) และจัดเก็บไว้ใน AWS Dynamo DataBase (DynamoDB)
3. วัตถุประสงค์
เพื่อลดความซับซ้อนของคำแนะนำในการทดสอบ Sensor to Arduino ไปยัง Sigfox ไปยัง AWS data transfer และเปรียบเทียบข้อมูลทั้งหมดในที่เดียว สำหรับรายละเอียดเพิ่มเติม โดยเฉพาะเกี่ยวกับ sigfox กับ AWSIot Connectivity ขอแนะนำให้อ่านบทความต้นฉบับโดย AWS
3. ทักษะที่จำเป็น:
1. คุ้นเคยกับ Arduino IDE รวมถึงการเพิ่มไลบรารี่และการอัพโหลดโค้ดไปยังบอร์ด Arduino 2. ความรู้พื้นฐานเกี่ยวกับ Amazon Web Service โดยเฉพาะการสร้าง Stack, DynamoDB และการสร้างกฎ
3. เปิดใช้งานการสมัครสมาชิก Sigfox แล้วและสามารถส่งข้อความ (ข้อมูล) จาก Sigfox Device ไปยัง SigFox Cloud
ครั้งที่สอง ติดตั้ง
ก.ฮาร์ดแวร์
1. Arduino Uno x1
2. Sigfox Arduino Shield: UnaShield_RC1692HP-SIG (รุ่น 1A) x1
3. วิทยุ Antannae x1
4. USB B to A Cable (เพื่อเชื่อมต่อ Arduino กับ PC) x1
5. การตั้งค่าเซนเซอร์ (BreadBoard, Temp Sensor DS18B20, 3x Male to Male Connectors; 1 voltage [red] 1 Ground [Black] 1 Data [White])
ข.ซอฟต์แวร์
1. Arduino IDE (เวอร์ชัน 1.8.1 ถูกใช้ในบทช่วยสอนนี้)
2. Arduino Library ชื่อ Unabiz Arduino Master Library พร้อมติดตั้ง Send - Light - Level แล้ว
C.บัญชี (ออนไลน์) & การสมัครสมาชิก
1. การสมัครสมาชิกเซิร์ฟเวอร์ Sigfox (มาพร้อมกับอุปกรณ์ Sigfox)
2. บัญชี Amazon AWS ที่เข้าถึงรูปแบบคลาวด์ (Stack Creation) & DynamoDB
การอ้างอิง IV:
aws.amazon.com/blogs/iot/connect-your-dev….
ขั้นตอนที่ 1: ตั้งค่า Arduino
A. ขั้นตอนแรกคือการอัปโหลดภาพร่างตัวอย่างส่งระดับแสงไปยัง Arduino
ในการทำเช่นนั้นให้เปิด arduino IDE คลิกที่คำต่อไปนี้ตามลำดับ: File > Example > unabiz-arduino-master (ภายใต้ส่วนย่อย Custom Libraries) > send-light-level อ้างถึงรูปที่ 5 หากมีคำใด ๆ ที่จำเป็นต้องคลิกดังกล่าวหายไป ให้ติดตั้ง unabiz arduino master library ใหม่ (ขั้นตอนในภาคผนวก 1) ทำซ้ำขั้นตอนที่ 1
B. เปลี่ยนรหัสอุปกรณ์เป็นอุปกรณ์ sigfox ของคุณ
บรรทัดของรหัสที่จะเปลี่ยนคือ (แสดงในรูปภาพ)
อุปกรณ์สตริงคงที่คงที่ = "xxxx"; // ตั้งค่านี้เป็นชื่ออุปกรณ์ของคุณหากคุณใช้ UnaBiz Emulator
C. ตรวจสอบและอัปโหลดรหัสไปยังอุปกรณ์ Arduino Sigfox
(อย่าลืมเลือกบอร์ดที่ถูกต้อง (ในกรณีนี้คือ arduino uno) และ Serial Port)
ขั้นตอนที่ 2:
ขั้นตอนที่ 3: Arduino Serial Monitor
ที่ Arduino IDE ให้เลือกเครื่องมือตามด้วย Serial Monitor ควรแสดง Message.addfield และ Radiocrafts.sendmessage: Radiocrafts.sendmessage: ตามด้วย sigfox deviceid
ขั้นตอนที่ 4: เข้าสู่ระบบ Sigfox
1. เข้าสู่ระบบที่
ขั้นตอนที่ 5: หน้าอุปกรณ์ Sigfox
2. คลิกที่แท็บอุปกรณ์ ประการที่สอง ตรวจสอบคอลัมน์ที่เห็นล่าสุด (C) เพื่อให้แน่ใจว่า sigfox ยังคงส่งข้อมูลอย่างแข็งขัน
หากผ่านไปประมาณ 15-20 นาที ความคลาดเคลื่อนระหว่างเวลาปัจจุบันกับเวลาที่แสดงไม่ลดลง แสดงว่า sigfox อาจมีปัญหา
จากนั้นคลิกที่อุปกรณ์ Sigfox ที่ใช้งานภายใต้คอลัมน์ประเภทอุปกรณ์ (B)
คุณจะถูกนำไปที่ส่วนประเภทอุปกรณ์
ขั้นตอนที่ 6: Sigfox Callback
เลือก Callback จากบานหน้าต่างด้านซ้ายสีม่วง (วงกลมสีแดง)
ขั้นตอนที่ 7: Sigfox โทรกลับใหม่
คลิกคำว่า New ที่มุมขวาบน ด้านล่างปุ่มออกจากระบบ (วงกลมสีแดง)
ขั้นตอนที่ 8: Sigfox สร้างประเภทการโทรกลับ
5. เลือก AWS IOT จากรายการประเภทการโทรกลับที่มี (ตำแหน่งที่สอง). คุณจะถูกนำไปที่หน้าถัดไป
ขั้นตอนที่ 9: Sigfox ไปยัง AWS CloudFormation
เลือกปุ่ม Launch Stack (A)
คุณจะถูกเปลี่ยนเส้นทางไปยังส่วนย่อยของ AWS CloudFormation Create Stack Page (สร้างเทมเพลต)
(หากคุณยังไม่ได้ลงชื่อเข้าใช้ aws ก่อนหน้านี้ คุณจะต้องทำตอนนี้)
จดบันทึก ID ภายนอก (B) เนื่องจากจะใช้ในภายหลัง
Region(C) สำหรับสิงคโปร์คือ ap-southeast-1 โปรดดูที่ https://docs.aws.amazon.com/general/latest/gr/ran… สำหรับภูมิภาคอื่นๆ
ขั้นตอนที่ 10: การสร้างสแต็ค AWS 1
ตรวจสอบให้แน่ใจว่าปุ่มข้าง ระบุ URL เทมเพลต Amazon S3 (A)
เลือกคำว่า NEXT ที่มุมล่างขวา (B)
คุณจะถูกนำไปที่หน้าถัดไป (ระบุรายละเอียดย่อย)
ขั้นตอนที่ 11: การสร้าง AWS Stack 2
ในหน้านี้ (ระบุรายละเอียด) คุณต้องกรอก 5 ช่อง ได้แก่ Stack Name, AWSAcountID, ExternalID, Region และ TopicName
คำแนะนำโดยละเอียดอยู่ด้านล่าง คลิกถัดไปหลังจากที่คุณทำเสร็จแล้ว (ที่มุมล่างขวา)
ประการแรกสำหรับ Stackname ให้ใช้ SigFoxIotConnector
ประการที่สองสำหรับ ID ภายนอก ใช้ข้อมูลที่จดบันทึกไว้ในขั้นตอนที่ 6 ID ภายนอก ใช้ข้อมูลที่จดบันทึกในขั้นตอนที่ 6
ประการที่สามสำหรับภูมิภาค ใช้ Ap-Southeast-1 (สำหรับสิงคโปร์) หรือดูที่ลิงค์นี้:
ประการที่สี่สำหรับ TopicName ใช้ sigfox
สุดท้ายสำหรับรหัสบัญชี AWS จะกล่าวถึงในขั้นตอนต่อไป
ขั้นตอนที่ 12: ตำแหน่งหมายเลขบัญชี AWS
เปิด AWS Console ในหน้าแยกโดยคลิกลิงก์นี้: https://ap-southeast-1.console.aws.amazon.com/con… (หรือด้วยวิธีอื่นใด)
คลิกปุ่มสนับสนุนที่มุมขวาบนทำให้เมนูเลื่อนลง
จากนั้นคลิกศูนย์บริการที่อยู่ในเมนูดรอปดาวน์
ขั้นตอนที่ 13: ตำแหน่งหมายเลขบัญชี AWS
ซึ่งจะนำคุณไปยังหน้าศูนย์สนับสนุน ซึ่งแสดง ID บัญชีที่มุมบนขวามือ ใต้ปุ่มสนับสนุน
ย้ายหมายเลข (หมายเลขบัญชี AWS) เป็น AWS AccountID ในขั้นตอนที่ 9 แล้วคลิกถัดไปที่มุมขวาล่างในหน้านั้น
ขั้นตอนที่ 14: การสร้าง AWS Stack
9. หน้านี้ (ตัวเลือก) ไม่จำเป็นสำหรับบทช่วยสอนนี้ คลิกถัดไปที่มุมล่างขวาจะนำคุณไปยังหน้ารีวิว
ขั้นตอนที่ 15: การสร้างสแต็ค AWS รอบชิงชนะเลิศ
ที่หน้าตรวจสอบ ตรวจสอบว่าการป้อนข้อมูลทั้งหมดถูกต้อง และภายใต้ความสามารถส่วนย่อย ให้ทำเครื่องหมายที่ช่องข้าง
ประโยค " ฉันรับทราบว่า AWS CloudFormation อาจสร้างทรัพยากร IAM"
สุดท้ายให้กดปุ่มสร้าง (มุมล่างขวาของหน้าจอ) เพื่อสร้าง stack
คุณจะกลับไปที่ Cloud Formation Management Console
ขั้นตอนที่ 16: รายละเอียดกอง AWS
t คอนโซลการจัดการ Cloudformation กองที่สร้างขึ้นใหม่ควรแสดง CREATE_COMPLETE ในคอลัมน์สถานะหลังจาก 2-10 นาที
คลิกชื่อกองเพื่อดูรายละเอียดเกี่ยวกับมัน
ขั้นตอนที่ 17: รายละเอียดกอง AWS 2
ค้นหาส่วนผลลัพธ์และคลิกลูกศรที่อยู่ข้างหน้า
คัดลอกคอลัมน์ค่าของ ARN Role และตรวจสอบว่าค่าอื่นๆ ถูกต้อง
ขั้นตอนที่ 18: การสร้างการโทรกลับ Sigfox รอบชิงชนะเลิศ
สลับกลับไปที่การตั้งค่าการโทรกลับของเว็บไซต์ SigFox (ขั้นตอนที่ 7; จากตำแหน่งที่ปุ่มสแต็ก llaunch อยู่) และกรอกข้อมูลในช่องที่เหลือทั้งหมด ยกเว้น custom payload config
คัดลอกบทบาท ARN ดังกล่าวไปยังบทบาทนี้
สำหรับ Json Body ให้คัดลอกและวางโค้ดด้านล่าง
หลังจากทั้งหมดที่ทำเสร็จแล้ว เลือกตกลง หน้าถัดไปแสดงการเชื่อมต่อการโทรกลับสำหรับอุปกรณ์ sigfox ที่เลือก
ขั้นตอนที่ 19: ตรวจสอบการสร้างการโทรกลับ Sigfox
ตรวจสอบให้แน่ใจว่าไม่มีข้อผิดพลาดและลิงก์ [POST] ใต้ส่วนข้อมูลจะคล้ายกับรูปภาพ
ขั้นตอนที่ 20: การสร้างตาราง DynamoDB ของ AWS
เลือก DynamDB ในเมนู amazon จากนั้นคลิกสร้างตาราง
ขั้นตอนที่ 21: AWS- การสร้างตาราง DynamoDB 2
เติมช่องว่างทั้งหมด
สำหรับ Table Name ให้ใส่ sigfox; สำหรับคีย์พาร์ติชั่น ให้ใส่ deviceid ตามด้วยกาเครื่องหมายที่กล่องคีย์การเรียงลำดับและใส่การประทับเวลา
คลิกสร้างเพื่อเสร็จสิ้น (อย่าแตะต้องการตั้งค่าใด ๆ ที่ไม่ได้กล่าวถึง) รอสักครู่เพื่อให้ตารางถูกสร้างขึ้นอย่างสมบูรณ์
ขั้นตอนที่ 22: การเข้าถึง AWSIot Console
เปิดคอนโซล AWS เลือก AWS Iot เลือก Rule จากนั้นเลือกสร้าง Rule
ขั้นตอนที่ 23: กฎการสร้าง AWS DynamoDB
4. กำหนดชื่อ Sigfox, * ให้กับแอตทริบิวต์และสุดท้ายใส่ sigofox ที่ตัวกรองหัวข้อ
ขั้นตอนที่ 24: AWS DynamoDB เพิ่มการดำเนินการ
ถัดไปคุณต้องสร้างการกระทำ เลือก เพิ่มการดำเนินการ แล้วเลือก " แทรกข้อความลงใน DynamoDB"
ขั้นตอนที่ 25: AWS DynamoDB เพิ่มการดำเนินการ 2
ใช้ชื่อเดียวกัน (sigfox) เพื่อกรอก Table Name
คีย์ Hash และ Rain ควรสร้างขึ้นเองโดยอัตโนมัติ
กรอก Hash Key Value ด้วย ${device} และ RangeKeyData Value ด้วย ${ timestamp()} ใต้ข้อความเขียน
สุดท้าย ให้กรอกข้อมูลลงในช่อง "เขียนข้อมูลข้อความลงในคอลัมน์นี้" พร้อมเพย์โหลด (ไม่อยู่ในวงกลม)
รูปภาพแสดงอยู่ด้านล่าง
ขั้นตอนที่ 26:
ขั้นตอนที่ 27: การสร้างบทบาท AWS DynamoDB
ถัดไปคือการสร้างบทบาทใหม่ ภายใต้ชื่อบทบาท IAM ให้ป้อน dynamodbsifox คลิกสร้างบทบาท จากนั้นคลิกเพิ่มการกระทำ
ขั้นตอนที่ 28: สิ้นสุดการสร้างบทบาท AWS DynamoDB
สุดท้าย คลิกสร้างกฎเพื่อสรุป (เพิ่มมุมขวาล่าง)
ขั้นตอนที่ 29:
กลับไปที่ตาราง DynamoDB และดูตารางที่เต็มไป
หมายเหตุ: หากไม่มีสิ่งใดปรากฏขึ้นในตาราง ปัญหาที่อาจเกิดขึ้น 1 ปัญหาอาจเป็นเพราะคอนโซล AWS อยู่ผิดภูมิภาค ตรวจสอบให้แน่ใจว่าภูมิภาคที่คอนโซล aws ตั้งอยู่นั้นเหมือนกับภูมิภาคที่ระบุในการสร้างสแต็ค
แนะนำ:
4 ถึง 20 MA เครื่องสอบเทียบกระบวนการทางอุตสาหกรรม DIY - เครื่องมือวัดอิเล็กทรอนิกส์: 8 ขั้นตอน (พร้อมรูปภาพ)
4 ถึง 20 MA เครื่องสอบเทียบกระบวนการทางอุตสาหกรรม DIY | เครื่องมือวัดทางอิเล็กทรอนิกส์: เครื่องมือวัดทางอุตสาหกรรมและอิเล็กทรอนิกส์เป็นสาขาที่มีราคาแพงมาก และไม่ง่ายที่จะเรียนรู้เกี่ยวกับเรื่องนี้ หากเราเป็นเพียงการศึกษาด้วยตนเองหรือเป็นงานอดิเรก ด้วยเหตุนั้น คลาสอุปกรณ์อิเล็กทรอนิกส์ของฉันและฉันจึงออกแบบกระบวนการ 4 ถึง 20 mA ราคาประหยัดนี้
การแสดงข้อความแบบเลื่อน (A ถึง Z Guide): 25 ขั้นตอน (พร้อมรูปภาพ)
การแสดงข้อความเลื่อน (A ถึง Z Guide): ในคำแนะนำ / วิดีโอนี้ฉันจะแนะนำคุณด้วยคำแนะนำทีละขั้นตอนเกี่ยวกับวิธีการแสดงข้อความเลื่อนด้วย Arduino ฉันจะไม่อธิบายวิธีสร้างรหัสสำหรับ Arduino ฉันจะแสดงวิธีใช้รหัสที่มีอยู่ อะไรและที่ไหนที่คุณต้องร่วม
Raspberry PI 3 - เปิดใช้งานการสื่อสารแบบอนุกรมไปยัง TtyAMA0 ถึง BCM GPIO 14 และ GPIO 15: 9 ขั้นตอน
Raspberry PI 3 - เปิดใช้งานการสื่อสารแบบอนุกรมไปยัง TtyAMA0 ถึง BCM GPIO 14 และ GPIO 15: ฉันเพิ่งมีความสนใจที่จะเปิดใช้งาน UART0 บน Raspberry Pi (3b) ของฉัน เพื่อให้ฉันสามารถเชื่อมต่อโดยตรงกับอุปกรณ์ระดับสัญญาณ RS-232 โดยใช้มาตรฐาน 9 - ขั้วต่อ d-sub แบบพินโดยไม่ต้องผ่านอะแดปเตอร์ USB เป็น RS-232 ส่วนหนึ่งของความสนใจของฉัน
ตัวควบคุมแรงดันไฟฟ้า 12v ถึง 3v: 8 ขั้นตอน
ตัวควบคุมแรงดันไฟฟ้า 12v ถึง 3v: คุณสามารถลดการจ่ายไฟ DC ได้อย่างง่ายดายโดยใช้ตัวต้านทาน 2 ตัว ตัวแบ่งแรงดันไฟฟ้าเป็นวงจรพื้นฐานและง่ายที่สุดในการลดกระแสไฟตรงใดๆ ในบทความนี้ เราจะทำวงจรง่ายๆ เพื่อลดขนาด 12v เป็น 3
LoRa 3Km ถึง 8Km การสื่อสารไร้สายด้วยอุปกรณ์ E32 (sx1278/sx1276) ราคาประหยัดสำหรับ Arduino, Esp8266 หรือ Esp32: 15 ขั้นตอน
LoRa 3Km ถึง 8Km การสื่อสารไร้สายด้วยอุปกรณ์ E32 (sx1278/sx1276) ราคาประหยัดสำหรับ Arduino, Esp8266 หรือ Esp32: ฉันสร้างไลบรารี่เพื่อจัดการ EBYTE E32 ตามชุดอุปกรณ์ LoRa ของ Semtech อุปกรณ์ที่ทรงพลัง เรียบง่าย และราคาถูก คุณสามารถหาได้ เวอร์ชัน 3Km ที่นี่ เวอร์ชัน 8Km ที่นี่พวกเขาสามารถทำงานในระยะทาง 3,000 ม. ถึง 8000 ม. และมีคุณสมบัติมากมายและ