Lorapromini - عقدة Lorawan منخفضة القوة
عقدة مستشعر Lorawan ، استنادًا إلى ATMEGA328P MCU (Arduino Pro Mini) و RFM95W/SX1276 Lora Transceiver.

يمكن استخدام الوحدة:
- جمع قيم المناخ المختلفة مع أجهزة الاستشعار البيئية. انظر مستشعر البيئة (الطقس/التسلق)
- أخبر ما إذا كان حامل الرسائل قد وضع رسائل جديدة في صندوق البريد الخاص بك. انظر مراقبة صندوق البريد
- إبلاغ ما إذا كان شخص ما رن جرس الباب
- تصرف زر بلا هوادة
- وغيرها الكثير ...
سمات
- MCU للنوم العميق وأجهزة الاستشعار بين عمليات نقل البيانات
- يمكن أن تستخدم مدخلتان مقاطعتان لإيقاظ MCU وأجهزة الاستشعار من النوم العميق
- تأكيد رسائل بيانات UND UND Unnformend
- استهلاك الطاقة المنخفضة للغاية. تحت 10μA مع جميع الميزات وأجهزة الاستشعار
- إدخال الطاقة 3.5-6V:
- البطارية (LI-ION أو LI-SOCL2 تعمل بشكل جيد)
- بطارية مع شاحن شمسي
- دعم المستشعر
- BOSCH BME280 (الرطوبة والضغط البارومتري ودرجة الحرارة المحيطة)
- Maxim DS18B20 (+)/DS18S20 (+)/DS1822 1 مستشعر درجة حرارة السلك 1
تحذير
لا يهتم Lorapromini بالامتثال لتقييد دورة العمل. يرجى تحديد فترات الإرسال فقط التي تقع ضمن الحدود القانونية (1 ٪/0.1 ٪). يرجى أيضًا ملاحظة أن مدخلات المقاطعة قد تتسبب في عمليات نقل إضافية إذا تم تنشيط هذه الوظيفة.
ترتيب ثنائي الفينيل متعدد الكلور
☝ لا يزال لدي عدد قليل من مركبات ثنائي الفينيل متعدد الكلور. إذا كنت مهتمًا ، فيرجى الاتصال بي. يمكن العثور على تفاصيل الاتصال هنا: https://github.com/foorschtbar أو تفضل بزيارة متجر Tindie:
مثال على التطبيقات
مستشعر البيئة (الطقس/التسلق)
- قم بتنزيل Radiation Shield STL
- شراء الضوء الشمسي LED مضاد للماء

مراقبة صندوق البريد
- تنزيل CASE STL
- شراء مفاتيح القصب المفتوحة عادة



المزيد من الصور


تكوين الأشياء
كيفية استخدام
- تصنيع ثنائي الفينيل متعدد الكلور. هنا تجد ملفات Gerber
- تجميع ثنائي الفينيل متعدد الكلور. هنا تجد فاتورة المواد (BOM)
- الانتباه: الإصدار الحالي (v3.1) من ثنائي الفينيل متعدد الكلور لا يحتوي على رأس ISP! يجب تثبيت ATMEGA328P محترق. حصلت على واحدة من لوحة Arduino Pro Mini (3.3 فولت 8 ميغاهيرتز) ، لأن Arduino المجمعة بالكامل أرخص من رقاقة واحدة
- فلاش تكوين البرامج الثابتة (انظر كيفية الفلاش)
- ابدأ معايرة الجهد من القائمة
- بدء تكوين تكوين تكوين منشئه
- قياس الجهد مع مقياس متعدد
- أدخل الجهد متعدد القياس والقيمة التناظرية في الآلة الحاسبة فولتس لكل بت (VPB) للحصول على عامل VPB.
- إذا كان لديك مصدر طاقة قابل للتعديل ، فحاول فولتية مختلفة لإيجاد أفضل عامل. تحذير: الحد الأقصى للجهد هو 6 فولت
- املأ الحقول الأخرى مثل تنشيط الميثود ومفاتيح الجلسة و EUIS
- اكتب التكوين إلى EEPROM باستخدام قائمة التكوين
- تحقق من التكوين المكتوب عبر قائمة التكوين
- فلاش تصحيح البرامج الثابتة أو إصدار البرامج الثابتة (انظر كيفية الفلاش)
- ينهي
كيفية وميض
avrdude-F -v -c arduino -p atmega328p -P <COM PORT> -b 57600 -D -U flash:w:<FIRMWARE FILE>:i
مثال:
avrdude -F -v -c arduino -p atmega328p -P COM4 -b 57600 -D -U flash:w:firmware_1.0_config.hex:i
البرامج الثابتة changelog
الإصدار 2.7
- تم إصلاح مشكلة لإعادة ضبط الزناد المقاطعة في وقت مبكر جدًا.
الإصدار 2.6
- المحاولة الثانية لحل التأخير غير الضروري بسبب الحد من دورة العمل. يتجمد تدفق Timer0 من MCU بعد حوالي 20 عملية نقل.
الإصدار 2.5
- مشكلة ثابتة مع الحد من دورة العمل
- إصلاح عدم الدقة في MCU Deepsleep
الإصدار 2.4
- إن المقاطعة الخارجية أثناء الإرسال تنهي ناقل الحركة وتبدأ ناقل حركة جديد.
- ممكّن وضع فحص الارتباط
الإصدار 2.3
الإصدار 2.2
- تمت إضافة تأخير إرسال إضافي بين 0 و 20s لتجنب التداخل بين العقد المختلفة مع نفس الفاصل الزمني إرسال نفسه تمامًا
- بعض تحسينات ذاكرة الفلاش
الإصدار 2.1
- تحسن (تصحيح) تسجيل إلى الإخراج التسلسلي
- يرسل BME -127 درجة مئوية (رابط DS18X) إذا لم يتم العثور على مستشعر
الإصدار 2.0
- وأضاف دبابيس مقاطعة الاستيقاظ
- خيار إضافي لتعطيل دبابيس المقاطعة
- خيار إضافي للوصلة الصاعدة المؤكدة
- تم تغيير رسالة لوروان عن الرسائل
- تمت إضافة حالة دبابيس المقاطعة
- بايت الإصدار الرئيسي والثانوي مجتمعة في بايت واحد (4 بتات للتخصص و 4 بتات للسيمين)
الإصدار 1.1
الإصدار 1.0
PCB changelog
الإصدار 3.2
- ثابت C7 (تم استبدال 10 فولت مع 100NF)
الإصدار 3.1
- تمت إضافة الحقل الأبيض لتحديد معرف العقدة
الإصدار 3.0
- إزالة Arduino Pro Mini Dauther PCB
- تمت إضافة Atmega328p مباشرة إلى PCB
- دبابيس مضافة ل GPIOs غير المستخدمة
- تمت إضافة D2 و D3 مع عمليات الانسحاب والموصل كمقاطعات خارجية (تحتاج إلى FW V2.0 أو أعلى)
الإصدار 2.2
- تمت إضافة PIN RST إلى موصل للبرمجة
الإصدار 2.1
الإصدار 2.0
- أصغر ثنائي الفينيل متعدد الكلور
- حواف مدورة
- مشكلة ثابتة مع رسم خرائط DS18X على متن الطائرة
الإصدار 1.0
TTS Payload Formatter (Decoder Payload سابقًا TTN)
function decodeUplink ( input ) {
var bytes = input . bytes ;
var itrTrigger = ( bytes [ 0 ] & 0x1 ) !== 0 ; // Message was triggered from interrupt (bit 0)
var itr0 = ( bytes [ 0 ] & 0x2 ) !== 0 ; // Interrupt 0 (bit 1)
var itr1 = ( bytes [ 0 ] & 0x4 ) !== 0 ; // Interrupt 1 (bit 2)
var bat = ( bytes [ 1 ] << 8 ) | bytes [ 2 ] ; // Battery
var fwversion = ( bytes [ 3 ] >> 4 ) + "." + ( bytes [ 3 ] & 0xf ) ; // Firmware version
var temp1 = ( bytes [ 4 ] & 0x80 ? 0xffff << 16 : 0 ) | ( bytes [ 4 ] << 8 ) | bytes [ 5 ] ; // BME Temperature
var humi1 = ( bytes [ 6 ] << 8 ) | bytes [ 7 ] ; // BME Humidity
var press1 = ( bytes [ 8 ] << 8 ) | bytes [ 9 ] ; // BME Pressure
var temp2 =
( bytes [ 10 ] & 0x80 ? 0xffff << 16 : 0 ) | ( bytes [ 10 ] << 8 ) | bytes [ 11 ] ; // DS18x Temperature
var mbStatus = "UNKNOWN" ;
if ( itr0 ) {
mbStatus = "FULL" ;
} else if ( itr1 ) {
mbStatus = "EMPTY" ;
}
return {
data : {
interrupts : {
itr0 : itr0 ,
itr1 : itr1 ,
itrTrigger : itrTrigger ,
} ,
extra : {
mbStatus : mbStatus ,
mbChanged : itrTrigger ,
} ,
fwversion : fwversion ,
bme : {
temperature : temp1 / 100 ,
humidity : humi1 / 100 ,
pressure : press1 ,
} ,
ds18x : {
temperature : temp2 / 100 ,
} ,
battery : bat / 100 ,
} ,
warnings : [ ] ,
errors : [ ] ,
} ;
} تودو