جدول المحتويات:

Skate-o-Meter: 7 خطوات (بالصور)
Skate-o-Meter: 7 خطوات (بالصور)

فيديو: Skate-o-Meter: 7 خطوات (بالصور)

فيديو: Skate-o-Meter: 7 خطوات (بالصور)
فيديو: HOW TO DO CROSSOVERS ON ROLLERBLADES (#5/7 COURSE) INLINE SKATING forward crossovers ROLLER SKATES 2024, يوليو
Anonim
سكيت متر
سكيت متر

أنا طالب في Howest Kortrijk. لإظهار مهاراتنا للمحاضرين الذين احتجناهم لبناء مشروع ، اخترت إنشاء عداد المسافات وعداد السرعة للوح التزلج الخاص بي باستخدام ماسح RFID. في هذا الدليل ، أنا goig لأقول كيف صنعت هذا المشروع.

خطرت لي هذه الفكرة لأنني أحب التزلج والتجول. أثناء الإبحار ، سيكون من السهل معرفة مقدار المسافة التي قطعتها ورؤية سرعي.

ضع في اعتبارك أن هذا نموذج أولي.

الخطوة 1: المكونات

عناصر

لقد استخدمت المكونات التالية لإنشاء هذا المشروع:

  • لوح تزلج
  • مقياس فرق الجهد
  • شاشة LCD
  • مستشعر تأثير هول
  • 10 كيلو أوم المقاوم
  • فطيرة التوت
  • اردوينو نانو
  • سلك توصيل (أنثى إلى ذكر)
  • سلك توصيل (Raspberry Pi)
  • سلك توصيل معزز (ذكر لذكر)
  • ثنائي الفينيل متعدد الكلور
  • ماسح RFID
  • شارة RFID
  • أداة للشحن

راجع BillOfMaterials للروابط والأسعار

الخطوة 2: الأسلاك

الأسلاك
الأسلاك

تحتوي القاعة على 3 دبابيس: VCC و GND ومخرج. تذهب الأرض إلى GND. VCC إلى 3.3V والإخراج في هذا المثال يذهب إلى GPIO 26. يسحب المقاوم 10K Ohm الإخراج عاليًا.

أستخدم الاتصال التسلسلي عبر USB بين raspberry pi و arduino nano لقراءة الشارات. هذا ليس في الصورة ولكنه مطلوب!

D9 RST (إعادة تعيين) D10 SDA (SS) (SPI SS) D11 MOSI (SPI MOSI) D12 MISO (SPI MISO) D13 SCK (SPI SCK) GND GND3.3 فولت 3.3 فولت

الخطوة 3: مخطط قاعدة البيانات

مخطط قاعدة البيانات
مخطط قاعدة البيانات

تحتوي قاعدة البيانات الخاصة بي على 3 جداول:

  • المستخدمون
  • حصة
  • البيانات

يمكن لكل مستخدم تتبع البيانات بشكل منفصل. تحتوي الجلسة على بيانات حتى تعرف مدى السرعة التي ذهبت بها في نقاط معينة أثناء استمرار الجلسة.

الخطوة 4: تكوين Arduino Nano

تكوين Arduino Nano
تكوين Arduino Nano
تكوين Arduino Nano
تكوين Arduino Nano
تكوين Arduino Nano
تكوين Arduino Nano

قم أولاً بوضع اردوينو نانو في جهاز الكمبيوتر الخاص بك عبر كابل USB. حدد اردوينو الصحيح ومنفذ USB المناسب للتحميل.

بعد ذلك نحتاج إلى إضافة المكتبة التي أستخدمها لقراءة شارة RFID. قم بتنزيل 'rfid-master' وانتقل إلى الرسم ، وقم بتضمين مكتبة ثم أضف مكتبة. ZIP. انتقل إلى ملف zip الذي قمت بتنزيله للتو واستخدم هذا الرمز ، وسيتم تثبيته تلقائيًا. بعد ذلك قم بتنزيل "RFID_Read.ino" الذي تم تعديله ، اضغط على ctrl + O وأضف نفس الوقت وانتقل إلى هذا الملف وافتحه.

إذا قمت بإجراء كل هذه الخطوات المذكورة أعلاه ، يمكنك التحقق من الملف. إذا كانت هناك أخطاء في المرة الأولى ، فجرّبها مرة أخرى. إذا نجح ذلك ، يمكنك تحميله على اردوينو الخاص بك. باستخدام الاختصار ctrl + shift + m ، يمكنك فتح الشاشة التسلسلية. يمكنك اختبار الملف هنا. إذا نجح الاختبار ، يمكنك فصل اردوينو وتوصيله بمنفذ USB الخاص بـ Raspberry Pi

الخطوة 5: تكوين Raspberry Pi

في هذه الخطوات سنقوم بإعداد raspberry pi كقاعدة بيانات وخادم ويب.

في هذا المثال ، أستخدم "أنا" المستخدم إذا كنت تستخدم مستخدمًا آخر تحتاج إلى تغيير ملفات التكوين ، احتفظ بهذا في الاعتبار!

1. قم بإنشاء مستخدم:

قم بإنشاء متغير

pieter @ rpipieter: ~ $ user = me

جعل المستخدم sudo والإضافة إلى كل المجموعات

المجموعات = $ (id pi -Gn | sed 's / ^ pi // g' | sed 's / /، / g') sudo useradd $ {user} -s / bin / bash -m -G $ {groups} sudo sed "s / ^ pi / $ {user} /" /etc/sudoers.d/010_pi-nopasswd | sudo tee "/etc/sudoers.d/011_${user}-nopasswd" sudo passwd $ {user}

تسجيل الدخول إلى الحساب

بيتر @ rpipieter: ~ $ سو - لي

كلمة المرور: me @ my-rpi: ~ $

2. تواصل مع شبكة WiFi

me @ rpipieter: ~ $ sudo -iroot @ rpipieter: ~ # صدى "كلمة المرور" | wpa_passphrase 'اسم الشبكة' >> /etc/wpa_supplicant/wpa_supplicant.conf root @ rpipieter: ~ # wpa_cli -i wlan0 أعد تكوين root @ rpipieter: ~ # logout

تحقق مما إذا كان الإنترنت يعمل

الجذر @ rpipieter: ~ # wget google.com

3. جعل التوت pi محدثًا وتثبيت العبوات اللازمة

me @ my-rpi: ~ $ sudo apt update

me @ my-rpi: ~ $ sudo apt قم بترقية me @ rpipieter: ~ $ sudo apt install -y python3-venv python3-pip python3-mysqldb mysql-server uwsgi nginx uwsgi-plugin-python3 gitme @ my-rpi: ~ $ sudo إعادة التشغيل -h الآن

4. استنساخ مستودع جيثب الخاص بي

me @ rpipieter: ~ $ git clone

me @ rpipieter: ~ $ cd skate-o-meter / مقياس تزلج /

5. صنع البيئة الافتراضية

أثناء القيام بهذه الأوامر ، سيتم تثبيت الكثير من الحزم ، وقد يستغرق ذلك بعض الوقت.

me @ rpipieter: ~ / skate-o-meter / skateometer $ python3 -m pip install - upgrade pip setuptools wheel virtualenv

me @ rpipieter: ~ / skate-o-meter / skateometer $ python3 -m venv - حزم موقع النظام env (env) me @ rpipieter: ~ / skate-o-meter / skateometer $ python -m pip install mysql- موصل-ثعبان الأرجون 2-cffi قارورة- HTTPAuth Flask-MySQL mysql-connector-python passlib pyserial pyjwt RPi. GPIO

6. إنشاء قاعدة البيانات والمستخدمين

نحن نستخدم قاعدة بيانات mysql

بيتر @ rpipieter: ~ / skate-o-meter / مقياس تزلج $ cd

بيتر @ rpipieter: ~ sudo mysql

ثم انسخ والصق هذا

منح التحديد والإدراج والتحديث والحذف في *. * TO 'som-data' @ 'localhost' ؛ تعيين كلمة المرور لـ 'som-data' @ 'localhost' = PASSWORD ('sensor9810') ؛ اختر * من mysql.user ؛ إنشاء مستخدم 'som-admin' @ 'localhost' IDENTIFIED بواسطة 'admin9810' ؛ إنشاء مستخدم "som-web" @ "localhost" معرف بواسطة "web9810" ؛ إنشاء مستخدم "som-sensor" @ "localhost" تم تحديده بواسطة "sensor9810" ؛ إنشاء قاعدة البيانات skateometerdb ؛ منح جميع الامتيازات على skateometerdb. * إلى "som-admin" @ "localhost" مع خيار المنح ؛ منح الاختيار ، إدراج ، تحديث ، حذف على مقياس تزلج db. * إلى "som-web" @ "localhost" ؛ منح التحديد والإدراج والتحديث والحذف على مقياس التزلج db. * إلى "som-sensor" @ "localhost" ؛ امتيازات التنظيف ؛

بعد ذلك سنضيف مخطط قاعدة البيانات الحالي مع العلاقات.

me @ rpipieter: ~ / skate-o-meter / مقياس تزلج $ sudo mysql <sql / skateometerdb_dump-withoutdata.sql

7. الخدمات

نقوم هنا بنسخ ملفات التكوين الخاصة بنا وإعادة تحميل المجلد حتى نتمكن من تمكين الخدمات

me @ rpipieter: ~ / skate-o-meter / skateometer $ sudo cp conf / som - *. service / etc / systemd / systemme @ rpipieter: ~ / skate-o-meter / skateometer $ sudo systemctl daemon-reload

سنقوم الآن بتمكين الخدمات بحيث في كل مرة نبدأ فيها raspberry pi ، ستبدأ تلقائيًا معها.

me @ rpipieter: ~ / skate-o-meter / skateometer $ sudo systemctl يتيح som-flask.service

تم إنشاء ارتباط رمزي /etc/systemd/system/multi-user.target.wants/som-flask.service → /etc/systemd/system/som-flask.service. me @ rpipieter: ~ / skate-o-meter / skateometer $ sudo systemctl يتيح som-data.service إنشاء ارتباط رمزي /etc/systemd/system/multi-user.target.wants/som-data.service → / etc / systemd / نظام / سوم بيانات. me @ rpipieter: ~ / skate-o-meter / skateometer $ sudo systemctl start som-data.service me @ rpipieter: ~ / skate-o-meter / skateometer $ sudo systemctl start som-flask.service

8. NGINX

me @ rpipieter: ~ / skate-o-meter / مقياس تزلج $ sudo cp conf / nginx / etc / nginx / sites-available / skateometerme @ rpipieter: ~ / skate-o-meter / skateometer $ sudo rm / etc / nginx / sites -enabled / default me @ rpipieter: ~ / skate-o-meter / skateometer $ sudo ln -s / etc / nginx / sites-available / skateometer / etc / nginx / sites-enabled / skateometerme @ rpipieter: ~ / skate-o -مقياس / مقياس تزلج $ sudo systemctl أعد تشغيل nginx.service

الخطوة السادسة: السكن + الصالة

سكن + صالة
سكن + صالة

الإسكان

أولاً ، قمت بعمل ثقب في لوح التزلج الخاص بي لشاشة LCD ، ومقياس الجهد والجرس. بعد ذلك قمت بلحام شاشة LCD ، ومقياس الجهد والجرس على PCB. ثم استخدمت سلكًا طائرًا لـ RPI ، وهو السلك الذي يحتوي على 40 دبوسًا. أضع جانبًا في raspberry pi والنصف الآخر الذي قطعته ، سنستخدم هذا الجانب في اللحام. في ملف "rpi-cable" يمكنك أن ترى أين تحتاج إلى لحام أي سلك.

بالنسبة للغلاف الذي استخدمت فيه صندوقًا منحنيًا قديمًا ، فقد قمت بوضع بعض الثقوب فيه من أجل كابل إيثرنت ولكي يأتي السلك الطائر في الصندوق.

احتفظ بالصندوق تحت لوح التزلج مع بعض البراغي. داخل الصندوق ، قمت بترتيب كل شيء ، بحيث يكون مناسبًا واستخدمت أيضًا البراغي وبعض المطاط لإبقاء كل شيء في مكانه. هذا يجعل إخراج الأشياء أسهل.

تم تثبيت RFID على الصندوق المضاء ويتم تثبيته في مكانه باستخدام ziptires ، وكانت إحدى المشكلات التي واجهتها هي أنه في بعض الأحيان لم يتم مسحه ضوئيًا ، ولكن مع بعض التغييرات التي أجريتها.

مستشعر تأثير هول

أولاً ، قمت بحفر ثقب في عجلتي وأدخلت مغناطيسًا فيه.

بالنسبة للقاعة ، يتم استخدام 3 أسلاك توصيل (ذكر إلى ذكر) لقد قمت بلحامها على ثنائي الفينيل متعدد الكلور وكذلك في القاعة نفسها. لقد قمت بتركيب مستشعر القاعة على شاحنتي مع بعض ziptires. تأكد من محاذاة المغناطيس والمستشعر جيدًا ، وإلا فلن يسجل النبض دائمًا.

الخطوة 7: بدء تشغيل التطبيق

الخطوة 1:

قم بتوصيل بنك التوت والباور بانك.

الخطوة 2:

انتظر حتى يبدأ البرنامج ، يمكنك متابعة ذلك على شاشة LCD. سترى عنوان IP ، انتقل إلى عنوان IP هذا.

الخطوه 3:

قم بإنشاء مستخدم ، يمكنك القيام بذلك عن طريق التسجيل. تحتاج إلى مسح الشارة ضوئيًا لرؤية معرفك المميز للشارة على شاشة LCD.

الخطوة الرابعة:

إذا أنشأت مستخدمًا ، يمكنك مسح شارتك وستبدأ جلسة.

الخطوة الخامسة:

انطلق في جولة بحرية

الخطوة السادسة:

امسح الشارة مرة أخرى لإيقاف الجلسة

الخطوة السابعة:

تسجيل الدخول لمشاهدة جلستك والبيانات التفصيلية من الجلسة

موصى به: