ทางเลือกที่ดีที่สุดสำหรับการสื่อสารไร้สายพลังงานต่ำช่วงสั้น


9

ฉันกำลังทำงานในโครงการที่ต้องอาศัยการสื่อสารไร้สายและฉันกำลังมองหาทางเลือกที่ดีที่สุด นี่คือข้อกำหนดในการออกแบบ:

  • ง่ายต่อการเชื่อมต่อกับ Arduino
  • ใช้งานในช่วงขนาดเล็ก (สูงสุด 5-6 เมตร)
  • กินพลังงานน้อย - เป็นไปได้น้อยที่สุด
  • อุปกรณ์จะต้องไม่รบกวนซึ่งกันและกัน
  • ไม่จำเป็นต้องเป็นแบบเรียลไทม์ความล่าช้าอาจเป็นไปตามลำดับของมิลลิวินาที
  • โดยทั่วไปอุปกรณ์ไม่ได้อยู่ในสายตาของกันและกัน (หมายถึง IR และโซลูชั่นที่คล้ายกันจะไม่ทำงาน)

สถานการณ์คือ:

อุปกรณ์ประมาณ 10 เครื่องในห้องเดียวกันสื่อสารกันส่งข้อความสั้น (สูงสุด 30 ตัวอักษร) ถึงกันเป็นระยะเวลาไม่กี่ชั่วโมง (ไม่ต้องเปลี่ยนแบตเตอรี่)

สิ่งที่ดีที่สุดที่ฉันสามารถหาได้คือบลูทู ธ (เฉพาะอย่างยิ่ง BLE) ส่วนใหญ่เป็นเพราะมีโมดูล Arduino + Bluetooth สำเร็จรูปและโมดูล "พลังงานต่ำ" ที่มีแนวโน้ม (ที่ครึ่งหนึ่งใช้พลังงานปกติของบลูทู ธ ธรรมดา) แต่ฉันต้องการ รักที่จะได้รับความเห็นจากคนที่มีประสบการณ์มากขึ้นในสาขานี้


2
ฉันโหวตให้บลูทู ธ
nidhin

ให้ข้อมูลบางอย่างเกี่ยวกับสิ่งที่คุณตัดสินใจไม่ใช้และเหตุผลของคุณ
Jason_L_Bens

มากที่สุด 5 ถึง 6 เมตร - บลูทู ธ สามารถทำงานได้มากกว่านี้ - 6m เป็นสัมบูรณ์ต้องไม่เกินขีด จำกัด หรือไม่ พลังน้อยมาก - แล้วชื่อของคุณและทำให้อับอายบ้างที่นี่ ต้องไม่รบกวนซึ่งกันและกัน - สิ่งนี้หมายความว่าอย่างไร
Andy aka

@Andyaka: ไม่สิ่งที่ฉันหมายถึงคืออุปกรณ์จะอยู่ห่างกันไม่เกิน 6 เมตรดังนั้นจึงไม่จำเป็นต้องรองรับระยะทางไกล ๆ สำหรับ "พลังงานน้อยมาก" ฉันวางแผนที่จะใช้งานอุปกรณ์แต่ละตัว (Arduino + LCD + โมดูลไร้สาย) ในแบตเตอรี่ AA หนึ่งหรือสองก้อนและอุปกรณ์เหล่านี้ควรสื่อสารอย่างน้อยหนึ่งชั่วโมงโดยไม่ต้องเปลี่ยนแบตเตอรี่
Giulio Muscarello

1
เสียงเหมือน piconet บลูทู ธ สำหรับฉัน
Ignacio Vazquez-Abrams

คำตอบ:


3

ลองดูสายXBeeของนักตกผลึก มีหลายประเภทขึ้นอยู่กับช่วงการส่งสัญญาณและระดับพลังงานที่ต้องการ

อุปกรณ์เหล่านี้ยังเชื่อมต่อกับโครงการ Arduino เกือบจะเป็นเรื่องเล็กน้อย Serialทำให้ห้องสมุดใช้ของฮาร์ดแวร์ UART ของ AVR ซึ่งอยู่ตรงเข้ากันได้กับขา Rx ของ XBee นอกจากนี้โปรดทราบว่าไม่จำเป็นต้องเปลี่ยนระดับเนื่องจาก pin XBee Rx / Tx ทำงานกับ 5V!

อย่างไรก็ตามโปรดทราบว่า XBee นั้นต้องใช้กำลังไฟ 3.3 โวลต์ดังนั้นจึงสามารถใช้ตัวควบคุมแรงดันไฟฟ้าแบบ LDO แบบ 3.3V ได้อย่างง่ายดาย


2

"ดีที่สุด" เป็นการยากที่จะกำหนด แต่ฉันจะดูเป็นตัวรับส่งสัญญาณ IEEE 802.15.4

ฉันใช้ MRF24J40MA สำหรับโครงการ ( https://github.com/briksoftware/gradusnik ) คุณสามารถลองดูว่ามีรหัสบางอย่างที่คุณสามารถใช้ได้ไหม โครงการใช้สำหรับ PIC แต่จริงๆแล้วหลายสิ่งเป็นแพลตฟอร์มอิสระ (โดยเฉพาะโครงการอื่น ๆ ที่ขึ้นอยู่กับ)

โมดูลใช้งานประมาณ 20mA ใน rx / tx ซึ่งไม่มาก อย่างไรก็ตามเพื่อให้แบตเตอรี่ใช้เวลานานคุณจะต้องทำให้โมดูลเข้าสู่โหมดสลีปเป็นส่วนใหญ่ คุณสามารถใช้เครือข่ายที่เปิดใช้งานสัญญาณนี้ได้โดยมีอุปกรณ์หนึ่งตัวทำหน้าที่เป็นผู้ประสานงาน โมดูลใช้ µA บางอย่างในโหมดสลีป (ตรวจสอบแผ่นข้อมูลเพื่อดูจำนวนที่แน่นอน)

ปัญหาเดียวที่เชื่อมต่อกับ Arduino คือคุณต้องเปลี่ยนระดับ 5-> 3.3 (หาก Arduino ยังคงใช้ 5v)

ตัวรับส่งสัญญาณอื่นที่เป็นที่นิยมสำหรับโปรโตคอล IEEE 802.15.4 คือโมดูล XBee แต่มีราคาแพงกว่ามาก


2

ฉันไม่เห็นว่ามันเป็นปัญหาไร้สาย แต่เป็นปัญหาโปรโตคอลมากกว่า

หากการอนุรักษ์แบตเตอรี่เป็นชื่อของเกมและหากอุปกรณ์หนึ่งสามารถผ่านการเขียนโปรแกรมที่เหมาะสมนำมาใช้บทบาทของ "ต้นแบบ" ชั่วคราวแล้วอุปกรณ์แต่ละอื่น ๆ สามารถจัดสรรเวลา เมื่อการจัดสรรเสร็จสิ้นแล้วผู้ควบคุมชั่วคราวสามารถกลับสู่การเป็นเพียร์ แต่สิ่งสำคัญคือกรอบเวลาที่สร้างขึ้นและเพื่อนร่วมงานทุกคนจะซื้อเข้ามาในกรอบงานนี้

สิ่งนี้ทำอะไร การมีตารางเวลาหมายความว่าคุณสามารถปิดวิทยุเป็นเวลาหลายร้อยมิลลิวินาทีและตื่นขึ้นมาเพื่อดูว่ามีความคืบหน้าในการรับส่งสัญญาณหรือไม่ เมื่อเพื่อนตื่นก็ต้องรอเพื่อดูว่าเพื่อนอีก 8 คนกำลังส่งข้อความถึงเพื่อนหรือไม่ เวลาเป็นสิ่งสำคัญ แต่ถ้าคุณต้องการอายุการใช้งานแบตเตอรี่ที่ยาวนาน คำตอบนี้เป็นเพียงความคิด ช่วงเวลาปลุกจะถูกแบ่งออกเป็น 8 ช่องอื่น ๆ ที่แต่ละ 8 เพื่อนอื่น ๆ ได้รับการจัดสรรเพื่อส่งสัญญาณและหากมีการส่งสัญญาณผู้อื่นสามารถฟังก่อนเพื่อตรวจสอบว่าสามารถส่งสัญญาณได้หรือไม่ บางสิ่งเช่นนี้: -

ป้อนคำอธิบายรูปภาพที่นี่

ช่อง "ถัดไป" อนุญาตให้เพื่อนใหม่เข้าร่วมกลุ่มได้

ทรานซีฟเวอร์ที่ใช้พลังงานต่ำเป็นเรื่องปกติดังนั้นฉันจะไม่เข้าไปดูเรื่องนี้


2

ลองใช้โมดูล txrx 433 mhz ที่ราคาถูก พวกมันมีประโยชน์และสามารถเชื่อมต่อกับ arduino ได้อย่างง่ายดาย ฉันใช้มันสำหรับโครงการหุ่นยนต์งานอดิเรกส่วนตัว


2

แค่อยากรู้ว่าทำไม NRF24L01 2.4GHz Wireless Transceiver Module ไม่ได้ถูกกล่าวถึง? มันเป็นหน่วยพลังงานต่ำสามารถเปลี่ยนเป็นโหมดสแตนด์บายสำหรับการวาดที่ต่ำกว่า มันทำงานด้วยกำลังไฟ 3.3 โวลต์ดังนั้นคุณสามารถใช้ทั้ง aarduino พลังงานต่ำหรือตัวแยกและที่ดีที่สุดของทั้งหมดคือราคาถูกสวย?

นี่คือหน้าผลิตภัณฑ์ nRF24L01 +พร้อมกับวิธีการ nRF24L01ที่มีข้อมูลเกี่ยวกับการเชื่อมต่อระหว่าง Arduino กับโค้ดตัวอย่าง


0

RFM12B อยู่ในใจ ..

http://www.hoperf.com/rf/fsk_module/RFM12B.htm

คุณสมบัติบางอย่าง:

  • อินเตอร์เฟซที่รองรับ SPI
  • อัตราการส่งข้อมูลสูง (สูงสุด 115.2 kbps ในโหมดดิจิตอล)
  • แหล่งจ่ายไฟ 2.2V-3.8V
  • ปรับเสาอากาศอัตโนมัติ
  • 16-bit RX data FIFO
  • ความเบี่ยงเบนของความถี่ TX ที่โปรแกรมได้
  • แบนด์วิดท์ของเครื่องรับโปรแกรมได้ (จาก 67 ถึง 400 kHz)
  • ตัวบ่งชี้ความแรงของสัญญาณอนาล็อกและดิจิตอล
  • สัญญาณนาฬิกาและรีเซ็ตสัญญาณสำหรับการใช้งาน MCU ภายนอก

อินเทอร์เฟซ SPI comms ควรมีความเป็นธรรมในการตั้งค่าด้วย Arduino

รุ่น RFM12B-S2 จำหน่ายต่ำกว่า $ 7 ในวันนี้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.