فهرست مطالب:
- مرحله 1: آنچه شما نیاز دارید…
- مرحله 2: با نصب سخت افزار BME 280 Sensor Hardware Setup شروع کنید
- مرحله 3: کد BME 280 Nodemcu ESP8266
- مرحله 4: موفقیت دستگاه حسگر BME280 + عیب یابی
- مرحله 5: راه اندازی سخت افزار Soilsensor
- مرحله 6: کد DS18B20 Nodemcu ESP8266
- مرحله 7: موفقیت حسگر خاک و عیب یابی
- مرحله 8: کار را تمام کنید
تصویری: سنسورهای فرمت Nodemcu ESP8266 برای Weewx: 8 مرحله (همراه با تصاویر)
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:57
این یک دستورالعمل برای افزودن حسگرها به نرم افزار ایستگاه هواشناسی weewx است.
اگر weewx را ندارید ، می توانید مطالبی را در این آموزش بیاموزید.
شما نیاز به دانش اولیه در مورد کد آردوینو و نحوه بارگذاری بر روی دستگاه دارید.
اطلاعات weewx را در اینجا پیدا می کنید:
آنچه شما می سازید 2 دستگاه است:
1 دستگاه دما و رطوبت را به نرم افزار weewx ارسال می کند.
1 دستگاه دمای خاک در اعماق مختلف زمین را به نرم افزار weewx ارسال می کند.
اولین دستگاه ما یک سنسور BME 280 است.
دستگاه دوم ما زنجیره ای از 3 سنسور DS18B20 Temperatur است. (در صورت تمایل می توانید موارد بیشتری را اضافه کنید).
بیا شروع کنیم:
مرحله 1: آنچه شما نیاز دارید…
Weewx در حال اجراست + دسترسی به سرور weewx. (به عنوان مثال PI تمشک 3).
2 ماژول Nodemcu ESP8266
3 یا بیشتر سنسور DS18B20
1 سنسور ترکیبی BME 280
1 لوله آلومینیومی یا مشابه با قطر 10 میلی متر و ضخامت دیوار 1 میلی متر و حدود. طول 1 متر
1 کیف ضد آب با بند کابل و مهره قفل.
1 منبع تغذیه 5 ولت (برای مثال لودر تلفن همراه).
مقداری سیم و لحیم کاری.
سنسور BME280 و ماژول های Nodemcu را در ebay پیدا می کنید.
برای لوله آلومینیومی یک فروشگاه سخت افزار محلی را انتخاب می کنم
برای مورد DS18B20 و ضد آب از www.reichelt.de استفاده می کنم
www.reichelt.de/DS-18B20/3/index.html؟ACTI…
www.reichelt.de/EL-FK-110/3/index.html؟ACT…
و گروه غلاف کابل با مهره قفل
www.reichelt.de/Kabelverschraubungen-Bopla…
برای bme280 می توانید به صورت اختیاری از قوطی انشعابی استفاده کنید
www.reichelt.de/Installationsmaterial/EL-D…
مرحله 2: با نصب سخت افزار BME 280 Sensor Hardware Setup شروع کنید
نوار را در BME280 لحیم کنید.
سپس BME را به Nodemcu وصل کنید:
BME VIN تا 3.3V
BME GND به GND
SCL تا D4
SDA تا D3
اگر دوست دارید می توانید دستگاه را در یک محفظه قرار دهید ، اما مطمئن شوید که سوراخ هایی در محفظه وجود دارد ، به طوری که مقادیر رطوبت و دما درست است.
مرحله 3: کد BME 280 Nodemcu ESP8266
برای کد می توانید از مخازن github من استفاده کنید:
github.com/Landixus/BME280_TO_SERVER_WEEWX
فایل ino به چند درج از شما نیاز دارد:
آدرس IP سرور weewx یا URL شما
و مسیری که فایل php در آن وجود دارد ، مطمئن شوید که ناحیه قابل نوشتن است.
من public_html dir را انتخاب می کنم زیرا سرور خانگی است.
اگر می خواهید مخازن git را کلون کنید و git را روی سرور خود نصب کرده اید ، می توانید با دستور کلون کنید:
"git clone" https://github.com/Landixus/BME280_TO_SERVER_WEEWX"
اکنون باید کارهایی را در سرور weewx انجام دهیم.
شما باید مسیرهای تنظیمات خود را ایجاد کنید!
که در
/home/weewx/public_html
ایجاد اطلاعات پوشه
در پوشه data یک bme.txt ایجاد کنید ، به عنوان مثال با:
nano bme.txt
فایل باید خالی باشد
نوشتن آن با:
chmod -R 777 bme.txt
(هرگز این کار را روی سروری انجام نمی دهید که به اینترنت دسترسی داشته باشد!)
در پوشه
/home/weewx/public_html
شما bme.php از repo github من را قرار می دهید.
ترفند این است که فایل INO مقادیر را به bme.php ارسال می کند و bme.php داده ها را در bme.txt می نویسد
در مرحله بعد باید سرویس را در weewx اضافه کنیم
bme.py را در پوشه قرار دهید
/home/weewx/bin/user
weewx.conf خود را در پوشه باز کنید
/home/weewx
همیشه خوب است که قبل از ویرایش این فایل پشتیبان داشته باشید!
به خط Engine بروید و خط را شبیه به خط من کنید:
[موتور]
# این بخش خدماتی را که باید اجرا شوند مشخص می کند. آن ها هستند
# بر اساس نوع ، و ترتیب خدمات در هر گروه
# ترتیب اجرای سرویس ها را تعیین می کند.
data_services = user.pond. PondService ، user.bme.bme
راه اندازی مجدد weewx با:
sudo /etc/init.d/weewx stop
sudo /etc/init.d/weewx start
با فرمان
tail -f/var/log/syslog
می توانید در logfile به دنبال اشتباهات یا موفقیت باشید ، به دنبال خروجی bme باشید: مقدار یافت شده از…
به سرور خود چند دقیقه زمان دهید تا تولید شود ، در weewx.conf "my" هر 5 دقیقه یک خروجی وارد کنید.
اگر پیام خطایی دارید مسیرهای خود را بررسی کنید.
اگر مقادیری دارید ، می توانید آن را در صفحه وب نشان دهید:
skin open.conf in
/home/weewx/skins/استاندارد
قابل اعتماد و متخصص:
# این احتمالاً مخصوص ایستگاه من است! اضافه کنید
extraTemp3 = BME1 TemperatureextraHumid1 = BME1 رطوبت
فایل را ذخیره کرده و در همان پوشه باز کنید
index.html.tmpl
به دنبال خط باشید:
#if $ day.extraTemp..
#پایان اگر
بعد از اولین #پایان در صورت پیدا کردن ، سنسور BME خود را با موارد زیر قرار دهید:
^^ متأسفم اما نمی توان این را به عنوان متن قرار داد:(پرونده را ذخیره کرده و خارج شوید.
نیازی به راه اندازی مجدد weewx نیست
اکنون باید NODEMCU ESP8266 را با فایل آردوینو تغذیه کنید.
فراموش نکنید که فای و آدرس خود را در فایل تنظیم کنید.
پس از بارگیری خروجی سریال را برای خطاها بررسی کنید.
پس از مدت کوتاهی باید مقادیر موجود در وب سایت weewx خود را مشاهده کنید.
مرحله 4: موفقیت دستگاه حسگر BME280 + عیب یابی
چند نکته برای شما:
بیش از 1 کنسول را از طریق بتونه باز کنید
در 1 کنسول تغییرات خود را اعمال کنید ، و در کنسول دیگر syslog خود را به صورت زنده با موارد زیر بخوانید:
tail -f/var/log/syslog
اگر خطایی دارید ، ابتدا به logfile خود مراجعه کنید.
خروجی شما باید شبیه خروجی من باشد:
مرحله 5: راه اندازی سخت افزار Soilsensor
برای سنسور DS18B20 ما باید یک سیستم گذرگاه با سیم و لحیم کاری بسازیم.
DS18B20 خود را بررسی کنید
DATA ، GND ، VCC
بین VCC و DATA شما به یک مقاومت 4.7K نیاز دارید. اگر در اولین DS18B20 مقاومت داشته باشید کافی است
سایر DS18B20 موازی یکدیگر هستند.
طول را برای نیازهای خود اندازه بگیرید. یک زنجیر را به هم لحیم کنید ، من سنجاق ها را با لوله جمع کننده محکم کرده ام.
برای آزمایش ، DATA را به D3 و VCC را به VCC (3.3V) و GND را به GND متصل می کنید.
برای گزینه خواب عمیق ، باید پلی بین RST و D0 وصل کنید (GPIO16)
شما نباید زنجیر را در لوله آلومینیوم قرار دهید ، آزمایشات خود را قبلاً انجام دهید!
مرحله 6: کد DS18B20 Nodemcu ESP8266
برای کد می توانید از مخازن GITHUB من استفاده کنید:
github.com/Landixus/multipleDS18B20WeeWX
همچنین فایل ino به تعدادی درج از شما نیاز دارد: آدرس IP سرور weewx یا URL و مسیری که فایل php را در آن قرار داده اید ، مطمئن شوید که ناحیه قابل نوشتن است ، من public_html dir را انتخاب می کنم زیرا سرور خانگی است.
اگر می خواهید مخازن git را کلون کنید و git را روی سرور خود نصب کرده باشید ، می توانید با دستور "git clone https://github.com/Landixus/multipleDS18B20WeeWX کلون کنید"
اکنون ما باید کارهایی را انجام دهیم که همه آنها روی سرور weewx ما کار می کنند.
شما باید مسیرهای تنظیمات خود را در
/home/weewx/public_html
یک پوشه "data" در پوشه data ایجاد کنید ds18b20.txt ایجاد کنید برای مثال nano ds18b20.txt txt باید emtpy باشد. آن را با chmod -R 777 ds18b20.txt (هرگز این کار را روی سروری انجام ندهید که از طریق اینترنت قابل دسترسی است) انجام ندهید (در پوشه/home/weewx/public_html زمینه ایجاد کنید. php نماینده github من. ترفند این است که فایل INO مقادیر را به ground.php و ground.php در ds18b20.txt می نویسد ، سپس باید سرویس را در weewx اضافه کنیم و ds18b20.py را در پوشه/home/weewx/bin/قرار دهیم. کاربر
weewx.conf خود را در پوشه /home /weewx باز کنید
همیشه خوب است که قبل از ویرایش این فایل پشتیبان داشته باشید!
به خط پایین بروید:
[موتور]
# بر اساس نوع ، و ترتیب خدمات در هر گروه
# ترتیب اجرای سرویس ها را تعیین می کند.
prep_services = weewx.engine. StdTimeSynch ، data_services = user.pond. PondService ، user.bme.bme ، user.ds18b20.ds18b20 خط بعد از کاما را اضافه کنید
"user.ds18b20.ds18b20" باید شبیه خط بالا ^^ باشد
راه اندازی مجدد weewx با:
sudo /etc/init.d/weewx stop
sudo /etc/init.d/weewx start
با دستور tail -f/var/log/syslog می توانید در logfile به دنبال خطاها یا موفقیت به دنبال خروجی باشید ds18b20: value found of به سرور خود چند دقیقه زمان بدهید تا در weewx.conf من هر 5 دقیقه یکبار تولید شود قرار دادن. اگر پیام خطایی دارید مسیرهای خود را بررسی کنید. اگر مقادیری دارید می توانید برای نمایش آن در صفحه بروید: باز کنید
skin.conf in/home/weewx/skins/Standard برو به:
# این احتمالاً مخصوص ایستگاه من است!
اضافه کردن
خاکTemp1 = DS18B201
خاکTemp2 = DS18B202
خاکTemp3 = DS18B203
فایل را ذخیره کرده و در همان پوشه index.html.tmpl باز کنید و به دنبال خطی باشید:
#if $ day.extraTemp..…
#پایان اگر
بعد از اولین #پایان در صورت پیدا کردن سنسور GroundSensor خود را با:
^^ متأسفیم اما نمی توان این را به عنوان یک متن قرار داد: (فایل را ذخیره کرده و خارج شوید. نیازی به راه اندازی مجدد weewx نیست. اکنون باید NODEMCU ESP8266 را با فایل آردوینو تغذیه کنید.
فراموش نکنید که فای و آدرس خود را در فایل تنظیم کنید. پس از بارگیری خروجی سریال را برای خطاها بررسی کنید.
پس از مدت کوتاهی باید مقادیر موجود در وب سایت weewx خود را مشاهده کنید.
مرحله 7: موفقیت حسگر خاک و عیب یابی
اگر همه کار می کنید و ارزش ها را می بینید ، بیرون بروید و لوله آلومینیوم را در زمین قرار دهید.
یک راه خوب این است که چسب حرارتی را در 1 طرف لوله قرار دهید و سپس لوله را به هم فشار دهید ، سپس قسمت بالایی دارید تا راحت تر در زمین قرار گیرد.
ابتدا لوله خود را در زمین قرار دهید ، می توانید با تخته چوبی نرم چکش کنید.
اگر لوله به اندازه کافی عمیق است می توانید زنجیر ds18b20 خود را داخل آن قرار دهید و سیم های برق را در جعبه ضد آب قرار دهید.
مطمئن شوید فای شما در این مکان کار می کند!
اگر نمی دانید سنسور چقدر عمیق است ، دو احتمال وجود دارد.
مرحله آزمایشی 1 ds18b20 را بین انگشت شما قرار می دهم ، درجه حرارت برای این یکی بالاتر می رود.
هنگامی که لوله در حال حاضر در زمین است ، معمولی بالاترین مقدار عمیق ترین نقطه است.
مرحله 8: کار را تمام کنید
فقط پایان
سوالات خود را ارسال کنید و دمای اولیه خود را در نظرات نشان دهید!
برای راهنمایی بیشتر به weewx google Groups در:
groups.google.com/forum/#!forum/weewx-user
توصیه شده:
آزمایش سنسورهای دما - کدام برای من؟: 15 مرحله (همراه با تصاویر)
آزمایش سنسورهای دما - کدام برای من ؟: یکی از اولین سنسورهایی که تازه واردان به محاسبات فیزیکی می خواهند آن را امتحان کنند چیزی برای اندازه گیری دما است. چهار مورد از محبوب ترین سنسورها TMP36 است که دارای خروجی آنالوگ است و به مبدل آنالوگ به دیجیتال ، DS18B20 ، نیاز دارد
حالت 3.3V برای سنسورهای اولتراسونیک (HC-SR04 را برای منطق 3.3V در ESP32/ESP8266 ، ذرات فوتون و غیره آماده کنید): 4 مرحله
3.3V Mod برای سنسورهای اولتراسونیک (HC-SR04 را برای منطق 3.3V در ESP32/ESP8266 ، Particle Photon ، و غیره آماده کنید): TL؛ DR: روی سنسور ، ردیابی را به پین اکو ببرید ، سپس آن را با استفاده از تقسیم ولتاژ (Echo trace -& gt؛ 2.7kΩ -& gt؛ اکو پین -& gt؛ 4.7kΩ -& gt؛ GND). ویرایش: در مورد اینکه آیا ESP8266 واقعاً 5V در GPIO در
آداپتور فرمت بزرگ برای دوربین بدون آینه شما: 10 مرحله (همراه با تصاویر)
آداپتور فرمت بزرگ برای دوربین بدون آینه: دوربین های دیجیتالی مدرن بسیار کوچک هستند ، اما گاهی اوقات بزرگ زیبا هستند. دوربین فیلمبرداری بزرگ ، اغلب برای پذیرش 4 & quot؛ x5 & quot؛ فیلم ورق برش ، جذابیت خاصی دارد. این فقط به این دلیل نیست که فیلم بزرگ باحال است ، بلکه به دلیل
سنسورهای مجاورت IR ارزان برای روبات های آردوینو: 6 مرحله (همراه با تصاویر)
سنسورهای مجاورت IR ارزان برای روبات های آردوینو: این سنسورهای مجاورت مادون قرمز کوچک ، آسان برای ساخت و فوق العاده ارزان هستند! آنها روی ربات ها ، برای دنبال کردن خط ، تشخیص لبه و حداقل فاصله سنجی ، عالی عمل می کنند. آنها همچنین بسیار بسیار ارزان هستند
یک فرمت جهانی برای تصاویر گرافیکی استریو؟: 12 مرحله
یک فرمت جهانی برای تصاویر استریو گرافیکی؟: نرم افزار استاندارد مشاهده تصاویر در رایانه ها ممکن است یک مشکل بیننده را حل کند. ارسال بیش از دو تصویر ممکن است مشکل بیننده دیگر CES vs PES را حل کند