UM2606
دليل المستخدم
الشروع في استخدام دفتر الأستاذ الموزع لـ IOTA
توسيع برامج التكنولوجيا لـ STM32Cube
مقدمة
ال X-CUBE-IOTA1 حزمة برامج التوسع ل STM32مكعب يعمل على STM32 ويتضمن برمجيات وسيطة لتمكين وظائف IOTA Distributed Ledger Technology (DLT).
IOTA DLT هي طبقة تسوية المعاملات ونقل البيانات لإنترنت الأشياء (IoT). يسمح IOTA للأشخاص والآلات بتحويل الأموال و / أو البيانات دون أي رسوم معاملات في بيئة غير موثوقة وبدون إذن ولا مركزية. حتى أن هذه التكنولوجيا تجعل المدفوعات الصغيرة ممكنة دون الحاجة إلى وسيط موثوق به من أي نوع. تم بناء التوسيع على تقنية برمجية STM32Cube لتسهيل إمكانية النقل عبر وحدات التحكم الدقيقة STM32 المختلفة. يعمل الإصدار الحالي من البرنامج على B-L4S5I-IOT01A طقم اكتشاف لعقدة إنترنت الأشياء ويتصل بالإنترنت من خلال واجهة Wi-Fi المرفقة.
روابط ذات صلة
قم بزيارة النظام البيئي STM32Cube web الصفحة على www.st.com للحصول على مزيد من المعلومات
https://www.iota.org/get-started/what-is-iota
https://docs.iota.org/docs/getting-started/1.1/introduction/overview
https://iota-beginners-guide.com
https://chrysalis.docs.iota.org
https://iota-beginners-guide.com/future-of-iota/iota-1-5-chrysalis
https://www.boazbarak.org/cs127/Projects/iota.pdf
اختصارات
الجدول 1. قائمة المختصرات
اختصار | وصف |
تقنية دفاتر الأستاذ الموزعة | تقنية دفتر الأستاذ الموزع |
بيئة تطوير متكاملة | بيئة تطوير متكاملة |
إنترنت الأشياء | إنترنت الأشياء |
إثبات العمل | إثبات العمل |
توسيع برنامج X-CUBE-IOTA1 لـ STM32Cube
زيادةview
ال X-CUBE-IOTA1 تتوسع حزمة البرامج STM32مكعب الوظائف مع الميزات الرئيسية التالية:
- البرامج الثابتة الكاملة لبناء تطبيقات IOTA DLT للوحات القائمة على STM32
- تتميز مكتبات البرامج الوسيطة بما يلي:
- FreeRTOS
- إدارة واي فاي
- التشفير والتجزئة ومصادقة الرسائل والتوقيع الرقمي (Cryptolib)
- تأمين مستوى النقل (MbedTLS)
- IOTA Client API للتفاعل مع Tangle - برنامج تشغيل كامل لبناء تطبيقات تصل إلى مستشعرات الحركة والبيئة
- Exampللمساعدة في فهم كيفية تطوير تطبيق IOTA DLT Client
- سهولة النقل عبر عائلات MCU المختلفة ، بفضل STM32Cube
- شروط ترخيص مجانية وسهلة الاستخدام
يوفر توسع البرنامج البرامج الوسيطة لتمكين IOTA DLT على متحكم STM32. IOTA DLT هي طبقة تسوية المعاملات ونقل البيانات لإنترنت الأشياء (IoT). يسمح IOTA للأشخاص والآلات بتحويل الأموال و / أو البيانات دون أي رسوم معاملات في بيئة غير موثوقة وبدون إذن ولا مركزية. حتى أن هذه التكنولوجيا تجعل المدفوعات الصغيرة ممكنة دون الحاجة إلى وسيط موثوق به من أي نوع.
ايوتا 1.0
يتم إنشاء تقنيات دفتر الأستاذ الموزع (DLTs) على شبكة عقدة تحتفظ بدفتر الأستاذ الموزع ، وهو عبارة عن قاعدة بيانات موزعة مؤمنة بالتشفير لتسجيل المعاملات. تصدر العقد المعاملات من خلال بروتوكول إجماع.
IOTA هي تقنية دفتر أستاذ موزعة مصممة خصيصًا لإنترنت الأشياء.
يسمى دفتر الأستاذ الموزع لـ IOTA بالتشابك ويتم إنشاؤه بواسطة المعاملات الصادرة عن العقد في شبكة IOTA.
لنشر معاملة في التشابك ، يجب على العقدة:
- التحقق من صحة معاملتين غير موافق عليهما تسمى تلميحات
- إنشاء وتوقيع المعاملة الجديدة
- أداء إثبات العمل الكافي
- بث المعاملة الجديدة إلى شبكة IOTA
يتم إرفاق المعاملة بالتشابك مع مرجعين يشيران إلى المعاملات التي تم التحقق من صحتها.
يمكن نمذجة هذا الهيكل كرسم بياني لا دوري موجه ، حيث تمثل الرؤوس معاملات فردية وتمثل الحواف مراجع بين أزواج المعاملات.
توجد معاملة التكوين في جذر التشابك وتتضمن جميع رموز IOTA المتاحة ، والتي تسمى iotas.
يستخدم IOTA 1.0 نهج تنفيذ غير تقليدي إلى حد ما يعتمد على التمثيل الثلاثي: يتم وصف كل عنصر في IOTA باستخدام trits = -1 ، 0 ، 1 بدلاً من البتات ، و trytes من 3 trits بدلاً من بايت. يمثل tryte عددًا صحيحًا من -13 إلى 13 ، مشفرًا باستخدام الأحرف (AZ) والرقم 9.
يستبدل IOTA 1.5 (Chrysalis) تخطيط المعاملات الثلاثية بهيكل ثنائي.
تتضمن شبكة IOTA العقد والعملاء. العقدة متصلة بأقرانها في الشبكة وتخزن نسخة من التشابك. العميل هو جهاز به بذرة تُستخدم لإنشاء العناوين والتوقيعات.
يقوم العميل بإنشاء المعاملات وتوقيعها وإرسالها إلى العقدة حتى تتمكن الشبكة من التحقق من صحتها وتخزينها. يجب أن تحتوي معاملات السحب على توقيع صالح. عندما تعتبر المعاملة صالحة ، تضيفها العقدة إلى دفتر الأستاذ الخاص بها ، وتقوم بتحديث أرصدة العناوين المتأثرة وتبث المعاملة إلى جيرانها.
IOTA 1.5 - شرنقة
الهدف من مؤسسة IOTA هو تحسين شبكة IOTA الرئيسية قبل Coordicide وتقديم حل جاهز للمؤسسات لنظام IOTA البيئي. يتم تحقيق ذلك عن طريق تحديث وسيط يسمى Chrysalis. الترقيات الرئيسية التي أدخلتها Chrysalis هي:
- عناوين قابلة لإعادة الاستخدام: اعتماد مخطط التوقيع Ed25519 ، الذي يحل محل نظام التوقيع لمرة واحدة Winternitz (W-OTS) ، يسمح للمستخدمين بإرسال الرموز بأمان من نفس العنوان عدة مرات ؛
- لا مزيد من الحزم: يستخدم IOTA 1.0 مفهوم الحزم لإنشاء التحويلات. الحزم عبارة عن مجموعة من المعاملات المرتبطة ببعضها البعض من خلال مرجع الجذر (الجذع). مع تحديث IOTA 1.5 ، تمت إزالة بنية الحزمة القديمة واستبدالها بالمعاملات الذرية الأبسط. يتم تمثيل قمة التشابك بالرسالة وهي نوع من الحاوية التي يمكن أن تحتوي على حمولات عشوائية (على سبيل المثال ، حمولة الرمز المميز أو حمولة الفهرسة) ؛
- نموذج UTXO: في الأصل ، استخدم IOTA 1.0 نموذجًا قائمًا على الحساب لتتبع رموز IOTA الفردية: احتوى كل عنوان IOTA على عدد من الرموز وكان العدد الإجمالي للرموز من جميع عناوين IOTA مساويًا لإجمالي التوريد. بدلاً من ذلك ، يستخدم IOTA 1.5 نموذج إخراج المعاملات غير المنفقة ، أو UTXO ، بناءً على فكرة تتبع المبالغ غير المنفقة من الرموز المميزة عبر بنية بيانات تسمى الإخراج ؛
- ما يصل إلى 8 من الآباء: باستخدام IOTA 1.0 ، كان عليك دائمًا الإشارة إلى معاملتين أصليتين. مع Chrysalis ، يتم تقديم عدد أكبر من العقد الأصلية المشار إليها (حتى 2). للحصول على أفضل النتائج ، يوصى على الأقل بوالدين فريدين في نفس الوقت.
روابط ذات صلة
لمزيد من المعلومات حول Chrysalis ، يرجى الرجوع إلى صفحة التوثيق هذه
إثبات العمل
يستخدم بروتوكول IOTA إثبات العمل كوسيلة للحد من معدل الشبكة.
استخدمت IOTA 1.0 لغة Curl-P-81 دالة تجزئة ثلاثية وتتطلب تجزئة مع العدد المطابق للصفر trits لإصدار معاملة إلى Tangle.
مع Chrysalis ، من الممكن إصدار رسائل ثنائية ذات حجم عشوائي. يصف هذا RFC كيفية تكييف آلية إثبات العمل الحالية مع المتطلبات الجديدة. ويهدف إلى أن يكون أقل اضطرابًا قدر الإمكان في آلية إثبات العمل الحالية.
بنيان
يتيح توسع STM32Cube هذا تطوير التطبيقات التي تصل إلى البرامج الوسيطة IOTA DLT واستخدامها.
يعتمد على طبقة تجريد الأجهزة STM32CubeHAL للميكروكونترولر STM32 ويمتد STM32Cube مع حزمة دعم لوحة معينة (BSP) للوحة توسيع الميكروفون ومكونات البرامج الوسيطة لمعالجة الصوت واتصالات USB مع جهاز كمبيوتر.
طبقات البرنامج التي يستخدمها البرنامج التطبيقي للوصول إلى لوحة توسيع الميكروفون واستخدامها هي:
- طبقة STM32Cube HAL: توفر مجموعة عامة متعددة المثيلات من واجهات برمجة التطبيقات للتفاعل مع الطبقات العليا (التطبيق والمكتبات والمكدسات). وهو يتألف من واجهات برمجة تطبيقات عامة وملحقة استنادًا إلى بنية مشتركة تسمح لطبقات أخرى مثل طبقة البرامج الوسيطة بالعمل بدون تكوينات أجهزة محددة لوحدة متحكم دقيق (MCU). يعمل هذا الهيكل على تحسين إمكانية إعادة استخدام رمز المكتبة ويضمن سهولة نقل الجهاز.
- طبقة حزمة دعم اللوحة (BSP): هي مجموعة من واجهات برمجة التطبيقات التي توفر واجهة برمجة لبعض الأجهزة الطرفية الخاصة باللوحة (LED ، زر المستخدم وما إلى ذلك). تساعد هذه الواجهة أيضًا في تحديد إصدار اللوحة المحدد وتوفر الدعم لتهيئة الأجهزة الطرفية MCU المطلوبة وقراءة البيانات.
الشكل 1. هندسة البرمجيات X-CUBE-IOTA1
هيكل المجلد
الشكل 2. هيكل مجلد X-CUBE-IOTA1
المجلدات التالية مضمنة في حزمة البرنامج:
- التوثيق: يحتوي على HTML مترجم file تم إنشاؤه من التعليمات البرمجية المصدر والوثائق التفصيلية لمكونات البرنامج وواجهات برمجة التطبيقات
- السائقين: يحتوي على برامج تشغيل HAL وبرامج التشغيل الخاصة باللوحة للأنظمة الأساسية والأجهزة المدعومة ، بما في ذلك المكونات الموجودة على اللوحة وطبقة تجريد الأجهزة المستقلة عن البائع CMSIS لسلسلة المعالجات ARM® Cortex®-M
- الوسيط: يحتوي على مكتبات تضم FreeRTOS ؛ إدارة Wi-Fi ؛ التشفير والتجزئة ومصادقة الرسائل والتوقيع الرقمي (Cryptolib) ؛ أمن مستوى النقل (MbedTLS) ؛ واجهة برمجة تطبيقات IOTA Client للتفاعل مع Tangle
- المشاريع: يحتوي على السابقينampلمساعدتك في تطوير تطبيق IOTA DLT Client للنظام الأساسي المدعوم المستند إلى STM32 (B-L4S5I-IOT01A) ، مع ثلاث بيئات تطوير ، IAR Embedded Workbench for ARM (EWARM) ، RealView مجموعة تطوير وحدة التحكم الدقيقة (MDK-ARM) و STM32CubeIDE
واجهة برمجة التطبيقات
توجد معلومات فنية مفصلة مع وظيفة واجهة برمجة تطبيقات المستخدم الكاملة ووصف المعلمة بتنسيق HTML مترجم file في مجلد "الوثائق".
وصف تطبيق IOTA-Client
المشروع fileيمكن العثور على تطبيق IOTA-Client في: $ BASE_DIR \ Projects \ B-L4S5IIOT01A \ Applications \ IOTA-Client.
المشاريع الجاهزة للإنشاء متاحة للعديد من IDEs.
يتم توفير واجهة المستخدم عبر المنفذ التسلسلي ويجب تكوينها بالإعدادات التالية:
الشكل 3. Tera Term - إعداد المحطة
الشكل 4. Tera Term - إعداد المنفذ التسلسلي
لتشغيل التطبيق ، اتبع الإجراء أدناه.
الخطوة 1. افتح محطة تسلسلية لتصور سجل الرسائل.
الخطوة 2. أدخل تكوين شبكة Wi-Fi (SSID ووضع الأمان وكلمة المرور).
الخطوة 3. قم بتعيين شهادات CA الجذر لـ TLS.
الخطوة 4. انسخ والصق محتويات Projects \ B-L4S5I-IOT01A \ Applications \ IOTAClient \ usertrust_thetangle.pem. يستخدمها الجهاز لمصادقة المضيفات البعيدة من خلال TLS.
ملحوظة: بعد تكوين المعلمات ، يمكنك تغييرها عن طريق إعادة تشغيل اللوحة والضغط على زر المستخدم (الزر الأزرق) في غضون 5 ثوانٍ. سيتم حفظ هذه البيانات في ذاكرة فلاش.
الشكل 5. إعدادات معلمات Wi-Fi
الخطوة 5. انتظر ظهور الرسالة "اضغط على أي مفتاح للمتابعة". يتم بعد ذلك تحديث الشاشة بقائمة الوظائف الرئيسية:
- إرسال رسالة فهرسة عامة
- إرسال رسالة استشعار الفهرسة (بما في ذلك الوقتamp، درجة الحرارة والرطوبة)
- احصل على التوازن
- إرسال المعاملة
- وظائف أخرى
الشكل 6. القائمة الرئيسية
الخطوة 6. اختر الخيار 3 لاختبار إحدى الوظائف التالية:
احصل على معلومات العقدة | احصل على النصائح |
احصل على الإخراج | مخرجات من العنوان |
احصل على التوازن | خطأ في الاستجابة |
احصل على رسالة | أرسل رسالة |
ابحث عن الرسالة | اختبار المحفظة |
منشئ الرسائل | اختبار التشفير |
الشكل 7. وظائف أخرى
روابط ذات صلة
لمزيد من التفاصيل حول وظائف IOTA 1.5 ، راجع وثائق عميل IOTA C
دليل إعداد النظام
وصف الأجهزة
STM32L4 + ديسكفري كيت عقدة إنترنت الأشياء
تتيح لك مجموعة B-L4S5I-IOT01A Discovery لعقدة إنترنت الأشياء تطوير تطبيقات للاتصال مباشرة بالخوادم السحابية.
تتيح مجموعة Discovery مجموعة متنوعة من التطبيقات من خلال استغلال الاتصالات منخفضة الطاقة والاستشعار متعدد الاتجاهات وميزات سلسلة STM4L32 + القائمة على النواة ARM®Cortex® -M4 +.
وهو يدعم اتصال Arduino Uno R3 و PMOD مما يوفر إمكانات توسع غير محدودة مع مجموعة كبيرة من اللوحات الإضافية المخصصة.
الشكل 8. مجموعة اكتشاف B-L4S5I-IOT01A
إعداد الأجهزة
مكونات الأجهزة التالية مطلوبة:
- مجموعة واحدة STM32L4 + Discovery لعقدة إنترنت الأشياء المزودة بواجهة Wi-Fi (رمز الطلب: B-L4S5I-IOT01A)
- كبل USB من النوع A إلى Mini-B USB من النوع B لتوصيل لوحة اكتشاف STM32 بجهاز الكمبيوتر
إعداد البرنامج
المكونات البرمجية التالية ضرورية لإعداد بيئة التطوير لإنشاء تطبيقات IOTA DLT لـ B-L4S5I-IOT01A:
- X-CUBE-IOTA1: تتوفر البرامج الثابتة والوثائق ذات الصلة على st.com
- سلسلة أدوات التطوير والمترجم: يدعم برنامج التوسع STM32Cube البيئات التالية:
- IAR Embedded Workbench for ARM ® (EWARM) toolchain + ST-LINK / V2
- حقيقيView سلسلة أدوات تطوير وحدة التحكم الدقيقة (MDK-ARM) + ST-LINK / V2
- STM32CubeIDE + ST-LINK / V2
إعداد النظام
تسمح لوحة اكتشاف B-L4S5I-IOT01A باستغلال ميزات IOTA DLT. تدمج اللوحة مصحح / مبرمج ST-LINK / V2-1. يمكنك تنزيل الإصدار المناسب من برنامج تشغيل ST-LINK / V2-1 USB على STSW- LINK009.
تاريخ المراجعة
الجدول 2. تاريخ مراجعة الوثيقة
تاريخ | المراجعة | التغييرات |
13 يونيو 19 | 1 | الإصدار الأولي |
18 يونيو 19 | 2 | تم تحديث القسم 3.4.8.1 TX_IN و TX_OUT ، القسم 3.4.8.3 إرسال البيانات من خلال القيمة الصفرية المعاملات والقسم 3.4.8.4 إرسال الأموال من خلال معاملات التحويل. |
6 مايو 21 | 3 | المقدمة المحدثة ، القسم 1 الاختصارات والمختصرات ، القسم 2.1 أكثرview، القسم 2.1.1 IOTA 1.0 ، القسم 2.1.3 إثبات العمل ، القسم 2.2 الهيكلية ، القسم 2.3 هيكل المجلد ، القسم 3.2 إعداد الأجهزة ، القسم 3.3 إعداد البرامج والقسم 3.4 إعداد النظام. تمت إزالة القسم 2 واستبداله برابط في المقدمة. تمت إزالة القسم 3.1.2 المعاملات والحزم ، القسم 3.1.3 الحساب والتوقيعات ، القسم 3.1.5 التجزئة. القسم 3.4 كيفية كتابة التطبيقات والأقسام الفرعية ذات الصلة ، القسم 3.5 وصف تطبيق IOTALightNode والأقسام الفرعية ذات الصلة ، والقسم 4.1.1 STM32 تمت إضافة منصة Nucleo القسم 2.1.2IOTA 1.5 - Chrysalis ، القسم 2.5 وصف تطبيق IOTA-Client ، القسم 2.4 API والقسم 3.1.1 STM32L4 + Discovery kit IoT node. |
ملاحظة مهمة - يرجى القراءة بعناية
تحتفظ شركة STMicroelectronics NV والشركات التابعة لها ("ST") بالحق في إجراء تغييرات وتصحيحات وتحسينات وتعديلات وتحسينات على منتجات ST و / أو على هذا المستند في أي وقت دون إشعار. يجب على المشترين الحصول على أحدث المعلومات ذات الصلة بمنتجات ST قبل تقديم الطلبات. تُباع منتجات ST وفقًا لشروط وأحكام البيع الخاصة بـ ST المعمول بها في وقت استلام الطلب.
يتحمل المشترون وحدهم المسؤولية عن اختيار واختيار واستخدام منتجات ST ولا تتحمل ST أي مسؤولية عن مساعدة التطبيق أو تصميم منتجات المشترين.
لا يتم منح أي ترخيص، صريحًا أو ضمنيًا، لأي حق من حقوق الملكية الفكرية من قبل شركة ST هنا.
إن إعادة بيع منتجات ST بأحكام مختلفة عن المعلومات الواردة هنا يؤدي إلى إبطال أي ضمان تمنحه شركة ST لهذا المنتج.
ST وشعار ST علامتان تجاريتان لشركة ST. للحصول على معلومات إضافية حول العلامات التجارية لشركة ST ، يرجى الرجوع إلى www.st.com/trademarks. جميع أسماء المنتجات أو الخدمات الأخرى مملوكة لأصحابها المعنيين.
تحل المعلومات الواردة في هذه الوثيقة محل المعلومات المقدمة مسبقًا في أي إصدارات سابقة من هذه الوثيقة.
© 2021 STMicroelectronics – جميع الحقوق محفوظة
المستندات / الموارد
![]() |
حزمة برامج التوسع ST X-CUBE-IOTA1 لـ STM32Cube [بي دي اف] دليل المستخدم ST ، X-CUBE-IOTA1 ، توسيع ، حزمة برامج ، لـ ، STM32Cube |