اقرأ تركيز ثاني أكسيد الكربون من مستشعر MH-Z19 والتعامل معه.
قم بتوصيل RPI و MH-Z19 على النحو التالي:
يلي مثال على الكابلات ، ولكن يمكنك الحرية في استخدام دبوس 5V و 0V آخر على RPI.
pi@raspberrypi:~/mh-z19 $ gpio readall
+-----+-----+---------+------+---+---Pi B+--+---+------+---------+-----+-----+
| BCM | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | BCM |
+-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
| | | 3.3v | | | 1 || 2 | | | 5v | | |
| 2 | 8 | SDA.1 | IN | 1 | 3 || 4 | | | 5v | | | <---- Vin
| 3 | 9 | SCL.1 | IN | 1 | 5 || 6 | | | 0v | | | <---- Gnd
| 4 | 7 | GPIO. 7 | IN | 1 | 7 || 8 | 1 | ALT0 | TxD | 15 | 14 | <---- RxD
| | | 0v | | | 9 || 10 | 1 | ALT0 | RxD | 16 | 15 | <---- TxD
| 17 | 0 | GPIO. 0 | IN | 0 | 11 || 12 | 0 | IN | GPIO. 1 | 1 | 18 |
| 27 | 2 | GPIO. 2 | IN | 0 | 13 || 14 | | | 0v | | |
| 22 | 3 | GPIO. 3 | IN | 0 | 15 || 16 | 0 | IN | GPIO. 4 | 4 | 23 |
| | | 3.3v | | | 17 || 18 | 0 | IN | GPIO. 5 | 5 | 24 |
| 10 | 12 | MOSI | IN | 0 | 19 || 20 | | | 0v | | |
| 9 | 13 | MISO | IN | 0 | 21 || 22 | 0 | IN | GPIO. 6 | 6 | 25 |
| 11 | 14 | SCLK | IN | 0 | 23 || 24 | 1 | IN | CE0 | 10 | 8 |
| | | 0v | | | 25 || 26 | 1 | IN | CE1 | 11 | 7 |
| 0 | 30 | SDA.0 | IN | 1 | 27 || 28 | 1 | IN | SCL.0 | 31 | 1 |
| 5 | 21 | GPIO.21 | IN | 1 | 29 || 30 | | | 0v | | |
| 6 | 22 | GPIO.22 | IN | 1 | 31 || 32 | 0 | IN | GPIO.26 | 26 | 12 |
| 13 | 23 | GPIO.23 | IN | 0 | 33 || 34 | | | 0v | | |
| 19 | 24 | GPIO.24 | IN | 0 | 35 || 36 | 0 | IN | GPIO.27 | 27 | 16 |
| 26 | 25 | GPIO.25 | IN | 0 | 37 || 38 | 0 | IN | GPIO.28 | 28 | 20 |
| | | 0v | | | 39 || 40 | 0 | IN | GPIO.29 | 29 | 21 |
+-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
| BCM | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | BCM |
+-----+-----+---------+------+---+---Pi B+--+---+------+---------+-----+-----+
المجموعة الكاملة تشمل التالية:
قم بتثبيت مجموعة كاملة ، قم بتنزيل من الإصدار
git clone https://github.com/UedaTakeyuki/mh-z19.git
ثم ، وصلت إلى المجلد وإصدار setup.sh *
./setup.sh
يتم إجراء الإعدادات اللازمة بما في ذلك تمكين المنفذ التسلسلي في هذا البرنامج النصي.
لبيثون 2.x
sudo pip install mh_z19
لبيثون 3.x
sudo pip3 install mh_z19
في حال كنت تستخدمه إذن الجذر ، اتصل بـ PIP بدون Sudo على النحو التالي:
لبيثون 2.x
pip install mh_z19
لبيثون 3.x
pip3 install mh_z19
يتم حل الاختلافات في الواجهة بين كل نموذج PI Raspberry داخل هذه الوحدة. على سبيل المثال ، اسم الجهاز التسلسلي هو الفرق بين Raspberry Pi 3 والنموذج الأقدم ، ولكن وحدة MH-Z19 تكتشف النموذج تلقائيًا وقراءة من الجهاز التسلسلي المناسب.
لاستخدام MH-Z19 ، بمجرد أن تحتاج إلى إعداد جهاز المنفذ التسلسلي التمكين على Raspberry Pi. قد تكون صفحة Wiki التالية مفيدة. أيضا ، يرجى الرجوع إلى صفحة PYPI TOP للحصول على التفاصيل.
pi@raspberrypi:~ $ sudo python3 -m mh_z19
{'co2': 668}
كما هو مذكور أعلاه ، قد يكون SUDO ضروريًا لأن قيمة مستشعر MH-Z19 تتم قراءة من خلال الاتصال التسلسلي وتطلب إذن الجذر بشكل عام.
وحدة MH-Z19 المثبتة تتوافق مع Pondslider وهو معالج مستشعر متعدد ومتعدد الاستخدامات لحفظه وإرساله والقيام بشيء آخر ضروري مع قيمة المستشعر.
على سبيل المثال ، نقدم حالة الاستخدام التالية:
يقرأ Pondslider القيمة المستشعر بواسطة معالج المستشعر المحدد ، وتمرير القيم إلى معالجات القيمة * التي تفعل شيئًا بها.
كل من مستشعرات المعالجات والقيمة هي وحدة بيثون. لمزيد من التفاصيل من المعالجات ، يرجى إحالة هذا.
هذه الوحدة تتوافق مع معالج أجهزة الاستشعار المتعددة ومتعددة الاستخدامات لتوفير وإرسال شيء آخر ضروري مع قيمة المستشعر.
في حالة اختيارك للتثبيت الكامل المذكور أعلاه ، وبعبارة أخرى ، قمت بإعداد setup.sh و pondslider وهناك مثال على مثال على ذلك وإعداده.
يمكنك القيام بذلك باستخدام معالج قيمة Save2Strage الذي يوجد في معالجات/قيمة/توفير/Save2strage ، وملف التكوين للقراءة من مستشعر MH-Z19 ويتم حفظها بواسطة Save2strage تم إعدادها كـ config.save.toml على المجلد المثبت MH-Z19.
على مجلد MH-Z19 عن طريق استدعاء Pondslider على النحو التالي ؛
sudo python -m pondslider --config config.save.toml
بعد ذلك ، /home/pi/ data/co2.csv يجب إنشاء خط جديد سيتم إضافة خط جديد لكل مكالمة.
The Monitor ™ هي خدمة مراقبة عن بُعد مجانية لإظهار أحدث البيانات على الويب.


يرجى إحالة مقدمة لفهم فهم الطيور حول Monior ™.
حساب مجاني متاح على النحو التالي. بعد ذلك ، قم بتسجيل الدخول والحصول على عرض iew_id ، وهو معرف فريد لتوجيه منطقة بيانات على جهاز الشاشة ™ لإظهار أحدث القيمة والمخطط ، على النحو التالي.
بعد الحصول على value_id في متصفحك ، عد إلى محطة Raspberry Pi الخاصة بك ، ثم يجب عليك تعيين هذا البرنامج لإرسال القيمة المقاسة إلى Value_ID. للقيام بذلك ، call setid.sh الأمر في الدليل المثبت MH_Z19. لنفترض أن القيمة الخاصة بك هي vpgpargj ، issue setid.sh الأمر على النحو التالي:
./setid.sh vpgpargj
ثم ، استدعاء نص "Pondslider" Python على النحو التالي:
pi@raspberrypi:~/mh-z19 $ sudo python -m pondslider
{'co2': 742}
co2
{"ok":false,"reason":"ViewID not valid"}
يجب تحديث مخطط السلسلة الزمنية الخاصة بك على شاشة الشاشة ™ على المتصفح من خلال أحدث قيمة تركيز ثاني أكسيد الكربون.
يمكنك تعيينه بواسطة أمر Autostart.sh في دليل تثبيت MH_Z19 على النحو التالي:
./autostart.sh --on
يمكنك إيقاف تشغيل هذا على النحو التالي:
./autostart.sh --off
أيضًا ، يمكنك التحقق من الحالة الحالية على النحو التالي:
./autostart.sh --status
لمزيد من التفاصيل ، يرجى إحالة هذه المدونة.
Pondslider أيضا دعم ATT M2X. للحصول على تفاصيل ، يرجى إحالة هذا المستند.
يتم تنفيذ ميزات حول المعايرة (كل من MH-Z19 و MH-Z19b) ، وتغيير نطاق الكشف (MH-Z19B) ومنطق ABC ON/OFF (MH-Z19B) في الإصدار 0.2.1 أو أحدث.
أخشى أنني قمت بتطبيق هذه فقط دون اختبار فقط بسبب عدم وجود أجهزة وأجهزة للاختبار ، FX: CONSTRATION CO2 GAS ، أيضًا وحدة MH-Z19B. إذا كان لديك هذه الأجهزة أو الأجهزة وحاول استخدام هذه الوظائف بسخاء ، فأنا أقدر حقًا أن تقرير مشكلتك كان إيجابيًا أو سلبيًا.
للتفاصيل ، يرجى إحالة هذا الويكي.
يوضح RevSpace/MHZ19 القيم غير الموثقة على أوراق البيانات الرسمية (MH-Z19 ، MH-Z19B). وفقًا لهذا ، -كل الخيار إضافة هذه القيم في قيمة الإرجاع JSON على النحو التالي:
sudo python -m mh_z19 --all
{"SS": 232, "UhUl": 10752, "TT": 61, "co2": 818, "temperature": 21}
sudo python3 -m mh_z19 --all
{"TT": 61, "co2": 807, "SS": 232, "temperature": 21, "UhUl": 10752}
أو وظيفة call read_all () على النحو التالي:
>>> import mh_z19
>>> mh_z19.read_all()
{'SS': 232, 'UhUl': 10738, 'TT': 61, 'co2': 734, 'temperature': 21}
>>>
في حال كان عليك استخدام جهاز تسلسلي محدد بدلاً من الجهاز التسلسلي الافتراضي لـ Raspberry PI والذي تحدده هذه المكتبة تلقائيًا ، على سبيل المثال ، في حالة حاجة إلى استخدام /dev /ttyusb0 لخيار FT232 USB-serial كإصدار رقم 12 ، يمكنك تحديد جهاز تسلسلي بواسطة- serial_device على النحو التالي:
sudo python -m mh_z19 --serial_device /dev/ttyUSB0
انظر هذا الويكي.
انظر هذا الويكي.
انظر هذا الويكي.
حتى لو كانت الكابلات لا تبدو مشكلة ويبدو أن UART قد تم تجهيزها بشكل جيد ولكن لا يمكنك الحصول على قيمة المستشعر. كما اقترح NINCUBE8 أن السحب لأعلى بمقدار 1-5KΩ يمكن أن يكون حلًا يعمل. شكرا لك nincube8!
المنتدى هو avai هنا. أي أسئلة ، اقتراحات ، تقارير مرحب بها!
--co2valueonly Option من خلال دمج العدد رقم 39 والمسألة رقم 40. شكرا Jonesthefox!