فهرست مطالب:

نمایشگر قدرت مبتنی بر تمشک PI لوازم خانگی: 14 مرحله
نمایشگر قدرت مبتنی بر تمشک PI لوازم خانگی: 14 مرحله

تصویری: نمایشگر قدرت مبتنی بر تمشک PI لوازم خانگی: 14 مرحله

تصویری: نمایشگر قدرت مبتنی بر تمشک PI لوازم خانگی: 14 مرحله
تصویری: آماده شدن نظام برای مرگ خامنه‌ای و رهبر شدن مجتبی- آرایش جدید قدرت پس از رد صلاحیت حسن روحانی 2024, دسامبر
Anonim
مانیتور قدرت مبتنی بر تمشک PI لوازم خانگی
مانیتور قدرت مبتنی بر تمشک PI لوازم خانگی
مانیتور قدرت مبتنی بر تمشک PI لوازم خانگی
مانیتور قدرت مبتنی بر تمشک PI لوازم خانگی

این یک پروژه کوچک بود که برای نظارت بر مصرف برق لوازم منزل در خانه و نمایش نمودارهای مصرف برق آنها در طول زمان انجام دادم. این در واقع یکی از ساده ترین پروژه های مبتنی بر Raspberry PI است که انجام داده ام ، بدون لحیم کاری یا هک محصولات باز مورد نیاز است. لازم نیست پروژه Raspberry PI باشد ، به راحتی می توان آن را روی جعبه لینوکس یا شاید ویندوز انجام داد.

هزینه 50 دلار استرالیا برای مجموعه 4 عدد مانیتور قدرت/دوشاخه های هوشمند و هزینه Raspberry PI است. این می تواند روی Pi Zero یا Original PI اجرا شود ، اگرچه متوجه شدم که کمی کند است. تنها PI دیگری که من دارم PI 3 است و من آن را بسیار سریع دیدم ، بنابراین این چیزی است که من توصیه می کنم. توجه داشته باشید که اگر می خواهید آن را روی PI قدیمی اجرا کنید ، می توانید فرکانس جمع آوری داده ها را کاهش دهید (من از 10 ثانیه استفاده می کردم).

این پروژه همچنین دارای مزایای اضافی است یا پلاگین هوشمند را از سیستم عامل سازندگان آزاد می کند ، بنابراین نیازی به استفاده از برنامه های خاص و خدمات ابری آنها نیست. بنابراین می توان آنها را با Home Assist یا فقط با اسکریپت های پایتون خود استفاده کرد.

لطفاً توجه داشته باشید من فرض می کنم که می دانید چگونه سیستم عامل را روی PI نصب کنید ، به آن متصل شوید و چند دستور لینوکس اولیه را اجرا کنید. همچنین فرض می کنم که می دانید چگونه آدرس IP پلاگین هوشمند خود را هنگامی که به WiFi متصل می شود پیدا کنید.

تدارکات

2 بسته یا 4 بسته پلاگین هوشمند از اینجا:

www.kogan.com/au/buy/kogan-smarterhome-sma…

1 PI تمشک

مهارت ها:

قابلیت تنظیم PI تمشک

خط فرمان اصلی لینوکس

ویرایشگر متن مانند vi یا nano (نانو کاربر پسندتر است ، هنگامی که با آن آشنا می شوید سریعتر است)

امکان یافتن IP دستگاه ها در شبکه شما.

مرحله 1: چند پلاگین هوشمند بخرید

چند پلاگین هوشمند بخرید
چند پلاگین هوشمند بخرید

پلاگین هوشمندی که استفاده کردم از اینجا بود:

www.kogan.com/au/buy/kogan-smarterhome-sma…

توجه داشته باشید که طیف وسیعی از دوشاخه های هوشمند سازگار هستند ، اکثر آنها (همه؟) دستگاه های مبتنی بر ESP8266 (WEMOS) هستند و چشمک زدن آنها بسیار آسان است. مطمئن شوید که چیزی را دارید که مانیتورینگ قدرت دارد مانند بسیاری دیگر. این صفحه لیست بزرگی از دستگاه های سازگار را نشان می دهد:

templates.blakadder.com/plug.html

مرحله 2: فلش کردن دستگاه

این قسمت به طرز شگفت آوری آسان بود. شما در اصل فقط نرم افزار را بارگیری کرده ، آن را اجرا کرده و مراحل را طی می کند.

برای این کار به جعبه Raspberry PI یا Linux با WiFi نیاز خواهید داشت. شما باید اتصال اصلی خود را به این دستگاه داشته باشید نه WiFi. برای PI3 من این کار آسان بود زیرا از طریق اترنت متصل شده بودم. اگر PI Zero دارید ، باید روش قدیمی را با صفحه کلید و مانیتور وصل کنید.

من فرض می کنم شما می دانید چگونه یک PI را تنظیم کنید و با SSH یا صفحه کلید به آن متصل شوید ، بنابراین این کار را انجام نمی دهم. اگر مطمئن نیستید ، آموزش های زیادی در وب وجود دارد.

قبل از شروع ، فقط کمی پس زمینه در دستگاه ها. در چین شرکتی به نام Tuya وجود دارد که دوشاخه های هوشمند را برای مشتریان مختلف پمپ می کند. آنها برای مشتریان مختلف سفارشی سازی می کنند و سیستم عامل پیش فرض را ارائه می دهند و به شرکت ها اجازه می دهند تغییرات خود را انجام دهند. مشکل این است که اگر مجموعه ای از محصولات مختلف از فروشندگان مختلف دارید ، در نهایت مجبور به اجرای دسته ای از برنامه ها می شوید که برخی از آنها بهتر از سایرین کار می کنند. با چشمک زدن یک سیستم عامل منبع باز ، خود را از همه اینها رها می کنید. بنابراین این برای اتوماسیون عمومی خانه خوب است.

بنابراین …. بدون بحث بیشتر ، دستورالعمل ها در اینجا آمده است:

1) این دستورات را روی PI اجرا کنید ، با این کار نرم افزار مورد نیاز نصب می شود.

# git clone https://github.com/ct-Open-Source/tuya-convert# cd tuya-convert#./install_prereq.sh

2) دوشاخه هوشمند را به برق وصل کنید

3) با دکمه آن را روشن کنید

4) دکمه پاور را نگه دارید تا زمانی که چراغ آبی شروع به چشمک زدن کند

5) 10 ثانیه صبر کنید. این ضروری نیست ، اما من متوجه شدم که اگر این کار را انجام دهید بهتر عمل می کند.

6) این دستور را اجرا کنید

./start_flash.sh

از اینجا فقط دستورات را دنبال کنید مگر در انتها "2. Tasmota" را انتخاب کنید. گزینه ای برای سیستم عامل متفاوت وجود دارد ، اما من آن را امتحان نکرده ام ، بنابراین مطمئن نیستم که چگونه است.

توجه داشته باشید که من مجبور بودم بیش از یک بار این کار را انجام دهم ، ابتدا فکر کردم دستگاه را آجر کرده ام ، نه چراغی دارم ، نه کلیک رله ، نه نشانه ای از زندگی. اما آن را خاموش کردم و آخرین فرمان را دوباره اجرا کردم و کار کرد. من مجبور شدم این کار را با 3 دستگاه از 4 دستگاهی که فلش کردم انجام دهم ، فقط یکی به طور مستقیم از بین رفت ، فکر می کنم به دلیل مرحله 5.

دستورالعمل کامل در اینجا:

github.com/ct-Open-Source/tuya-convert

مرحله 3: اتصال به سیستم عامل برای اولین بار

اتصال به سیستم عامل برای اولین بار
اتصال به سیستم عامل برای اولین بار
اتصال به سیستم عامل برای اولین بار
اتصال به سیستم عامل برای اولین بار
اتصال به سیستم عامل برای اولین بار
اتصال به سیستم عامل برای اولین بار

هنگامی که tasmota را روی دستگاه قرار می دهید ، علائم زیادی از زندگی نشان نمی دهد. دلیل این امر این است که باید پیکربندی شود. انجام این کار نسبتاً آسان است ، من بهترین کار را با تلفن خود انجام دادم. مراحل عبارتند از:

1) نقاط دسترسی WiFi را جستجو کنید

2) متصل به برچسب tasmota_xxxx (جایی که x اعداد است)

3) تلفن باید شما را به صفحه پیش فرض هدایت کند ، در غیر اینصورت به 192.168.4.1 بروید

توجه داشته باشید در برخی از تلفن ها ممکن است پیامی به شما داده شود "بدون دسترسی به اینترنت ، آیا می خواهید همچنان متصل باشید" ، بله را انتخاب کنید.

4) در صفحه ای که ظاهر می شود ، نام شبکه WiFi و رمز عبور خود را در 2 کادر اول وارد کنید. روی گزینه نمایش رمز عبور کلیک کنید و سه بار بررسی کنید گذرواژه مناسب را وارد کرده اید. اگر رمز ورود را اشتباه وارد کرده اید ، بازگشت به این صفحه پیکربندی دشوار است. توجه داشته باشید که می توانید شبکه های WiFi را نیز اسکن کنید ، اگرچه بدیهی است که هنوز باید رمز عبور را وارد کنید.

5) این دوشاخه باید به شبکه WiFi شما متصل شده باشد. باید به صفحه پیکربندی روتر خود بروید و IP دستگاه خود را پیدا کنید.

6) مرورگر وب را در رایانه خود باز کنید و به https:// [device_ip] بروید باید صفحه پیکربندی را از Tasmota مشاهده کنید.

تبریک می گویم ، شما با موفقیت پلاگین را فلش کردید.

مرحله 4: پیکربندی Plug

پیکربندی پلاگین
پیکربندی پلاگین

ظاهراً شرکتی که این دستگاه ها را می سازد 10،000 دستگاه با پیکربندی های مختلف تولید می کند. ما به تازگی یک سیستم عامل جدید را فلش کرده ایم و سیستم عامل نمی داند روی چه دستگاههایی فلش شده است. بنابراین قبل از اینکه هر چیزی کار کند ، باید آن را پیکربندی کنیم. برای انجام این کار ، ما باید جزئیات دستگاه خود را در وب پیدا کرده و آن پیکربندی خاص را بارگیری کنیم.

برای این کار ، دستگاه خود را در این صفحه پیدا کنید:

templates.blakadder.com/plug.html

برای دستگاهی که استفاده کردم ، پیکربندی در اینجا آمده است:

templates.blakadder.com/kogan-KASPEMHUSBA….

برای تنظیم پیکربندی فقط متن را در زیر Template کپی می کنیم. در این مورد عبارت است از:

سپس

1) به صفحه پیکربندی دستگاه خود بروید https:// [IP پلاگین هوشمند]

2) روی پیکربندی ، پیکربندی دیگر کلیک کنید

3) رشته الگو را در خود جایگذاری کنید

4) تیک "Enable MQTT" را علامت بزنید

5) فعال و ذخیره را کلیک کنید.

برای آزمایش این کار ، روی "منوی اصلی" کلیک کنید تا به صفحه اصلی برگردید و اکنون باید ارقام مصرف برق را مشاهده کنید. همه آنها صفر خواهند بود ، حتی ولتاژ ، اما این یک نشانه خوب است. روی دکمه ضامن کلیک کنید و باید صدای کلیک رله را بشنوید و ولتاژ را ببینید.

مرحله 5: کالیبره ولتاژ

کالیبره ولتاژ
کالیبره ولتاژ

متوجه شدم که میزان ولتاژ بسیار بالا نشان داده می شود. اگر منبع دیگری برای اندازه گیری ولتاژ در خانه دارید (به عنوان مثال متر هوشمند شاید ؟؟) ، می توانید دوشاخه را به راحتی کالیبره کنید. برای انجام این

1) قرائت صحیح ولتاژ را بدست آورید

2) رله را در پلاگین هوشمند روشن کنید

3) روی کنسول در صفحه اصلی دستگاه کلیک کنید

4) فرمان "VoltageSet 228" را وارد کرده و enter را فشار دهید (ولتاژ خود را 228 جایگزین کنید)

اکنون ولتاژ باید به درستی نشان داده شود.

مرحله 6: نصب نرم افزار روی PI

چند بسته وجود دارد که باید روی PI نصب شوند. نصب آنها آسان است و می توان با دنبال کردن دستورالعمل های بسته های مختلف انجام داد. من دستورالعمل ها را در اینجا می دهم اما توجه داشته باشید که آنها می توانند در طول زمان تغییر کنند ، بنابراین دستورالعمل های من تاریخ خواهند داشت. بسته ها عبارتند از:

گرافانا (برای نمایش نمودارها)

Influxdb (پایگاه داده سری زمانی که داده های ما را ذخیره می کند)

Telegraf (برای وارد کردن داده ها به Influxdb استفاده می شود)

Mosquitto (گذرگاه پیام برای انتقال داده ها استفاده می شود ، پلاگین هوشمند داده ها را در اینجا فشار می دهد)

زنجیره جریان داده ها به شرح زیر است:

پلاگین هوشمند -> Mosquitto -> Telegraf -> InfluxDB -> Grafana

اگر می پرسید چرا ما نمی توانیم از Mosquitto و Telegraf بگذریم ، این س goodال خوبی است. در تئوری ، پلاگین هوشمند می تواند به Influx فشار بیاورد. مشکل در این است که پس از آن باید برای 100000 نقطه پایانی مختلف قابل تنظیم باشد و ما را از برخی انتخاب ها محروم کند. اکثر وسایل اتوماسیون خانگی از Mosquitto برای انتقال پیام ها استفاده می کنند. به عنوان مثال ، ما می توانیم با ارسال پیام به Mosquitto دوشاخه را خاموش و روشن کنیم و پلاگین هوشمند آنها را دریافت کرده و پاسخ می دهد.

مرحله 7: نصب Grafana

نصب گرافانا
نصب گرافانا

از جانب:

grafana.com/grafana/download؟platform=arm

یا بسیاری از گزینه های دیگر در اینجا:

grafana.com/grafana/download

برای Pi 1 و Pi Zero (ARMv6)

sudo apt-get install -y adduser libfontconfig1#جدیدترین نسخه را از صفحه در بالای صفحه پیدا کنید https://dl.grafana.com/oss/release/grafana-rpi_7….sudo dpkg -i grafana-rpi_7.0.1_armhf. debsudo /bin /systemctl daemon-reloadsudo /bin /systemctl فعال کردن grafana-serversudo /bin /systemctl شروع grafana-server

برای PI های جدیدتر (ARMv7)

sudo apt -get install -y adduser libfontconfig1#آخرین نسخه را از صفحه در بالای صفحه پیدا کنید https://dl.grafana.com/oss/release/grafana_7.0.1_…sudo dpkg -i grafana_7.0.1_armhf.debsudo/ bin/systemctl daemon-reloadsudo/bin/systemctl فعال کردن grafana-serversudo/bin/systemctl شروع grafana-server

برای آزمایش:

به https:// [IP of PI]: 3000 بروید

نام کاربری/رمز عبور admin/admin است ، از شما می خواهد آن را تغییر دهید ، فعلاً می توانید رد شوید

اگر GUI دریافت کردید خوب است ، به مرحله بعدی بروید

مرحله 8: نصب InfluxDB

این دستورات را روی PI اجرا کنید:

curl -sL https://repos.influxdata.com/influxdb.key | sudo apt-key add -source/etc/os-releasetest $ VERSION_ID = "7" && echo "deb https://repos.influxdata.com/debian wheezy stable" | sudo tee /etc/apt/sources.list.d/influxdb.listtest $ VERSION_ID = "8" && echo "deb https://repos.influxdata.com/debian جسی پایدار" | sudo tee /etc/apt/sources.list.d/influxdb.listtest $ VERSION_ID = "9" && echo "deb https://repos.influxdata.com/debian stretch կայուն" | sudo tee /etc/apt/sources.list.d/influxdb.listtest $ VERSION_ID = "10" && echo "deb https://repos.influxdata.com/debian buster stable" | sudo tee /etc/apt/sources.list.d/influxdb.listsudo apt-get updatesudo apt-get install fluxdbsudo systemctl enable influxdbsudo systemctl شروع influxdb

با تایپ "هجوم" تست کنید. این باید شما را وارد خط فرمان influxdb کند. "نمایش پایگاه داده" را تایپ کنید ، هنوز پایگاه داده ای وجود نخواهد داشت اما اگر یک لیست خالی بدون خطا دریافت کنید ، خوب است.

مرحله 9: نصب Telegraf

این یکی واقعا آسان است ، زیرا ما replosdb repos را اضافه کردیم که می توانیم تایپ کنیم:

sudo apt-get telegrafsudo systemctl telegrafsudo systemctl شروع telegraf

در این مرحله ، تلگرام در حال حاضر معیارهای سیستم را در influxdb وارد می کند. با تایپ این دستورات می توانید آنها را مشاهده کنید:

پایگاه های اطلاعاتی fluxshow استفاده از مجموعه های telegrafshowSELECT * FROM CPU LIMIT 10؛

مرحله 10: Mosquitto را نصب کنید

این قسمت آسان است زیرا ما فقط نسخه پیش فرض را که با raspian بسته بندی شده است نصب می کنیم:

sudo apt -get -y install mosquittosudo apt -get -y install mosquitto -clientssudo systemctl enable mosquittosudo systemctl start mosquitto# ایجاد گذرواژه برای mosquittosudo mosquitto_passwd -c/etc/mosquitto/tasmota tasmota# رمز عبور را وارد کنید این رمز عبور را بنویسید زیرا ما باید آن را به پلاگین هوشمند بدهیم

برای آزمایش:

این را در یک جلسه SSH اجرا کنید:

mosquitto_sub -t test

این را در دیگری اجرا کنید

mosquitto_pub -t test -m mymessage

شما باید پیام خود را در اولین جلسه SSH مشاهده کنید

مرحله 11: ارسال اطلاعات از پلاگین هوشمند به Mosquitto

ارسال اطلاعات از پلاگین هوشمند به Mosquitto
ارسال اطلاعات از پلاگین هوشمند به Mosquitto

در حال حاضر ما در حال کار پشه هستیم ، باید پلاگین هوشمند را برای ارسال اطلاعات به پشه پیکربندی کنیم. این کار نسبتاً آسان است. ما به رمز عبور وارد شده برای پشه در مرحله قبل نیاز داریم.

1) وارد صفحه وب پلاگین های هوشمند خود شوید

2) روی Configuration و سپس Configure Logging کلیک کنید

3) دوره دورسنجی را روی 10 تنظیم کنید و روی ذخیره کلیک کنید.

4) روی Configure MQTT کلیک کنید

5) برای میزبان آدرس IP PI خود را وارد کنید

6) برای نام کاربری tasmota را وارد کنید

7) برای رمز عبور رمز عبور مرحله قبل را وارد کنید

8) برای موضوع ، tasmota1 را وارد کنید

9) ذخیره را کلیک کنید

برای آزمایش:

در PI ، دستور زیر را تایپ کنید. در عرض 10 ثانیه باید داده ها را مشاهده کنید.

mosquitto_sub -t tele/tasmota1/SENSOR

داده ها باید به این شکل باشند:

مرحله دوازدهم: از Telegraf برای فشار دادن داده ها از Mosquitto به Influx استفاده کنید

ما در حال حاضر پیکربندی Telegraf را برای خواندن داده های پشه و فشار دادن به influxdb تنظیم می کنیم. در PI:

1) sudo mv /etc/telegraf/telegraf.conf /etc/telegraf/telegraf.conf.bak

2) sudo vi /etc/telegraf/telegraf.conf

توجه داشته باشید vi برای کاربران جدید بسیار دوستانه نیست ، اگر ترجیح می دهید ویرایشگر متن بر اساس منو به جای آن از نانو استفاده کنید:

sudo nano /etc/telegraf/telegraf.conf

3) فایل پیوست را در پیکربندی جایگذاری کنید

4) راه اندازی مجدد telegraf sudo systemctl

برای آزمایش این را روی PI تایپ کنید:

هجوم

نمایش پایگاه های داده

شما باید پایگاه داده آزمون را مشاهده کنید. اگر تست نام را دوست ندارید می توانید dest_db را در فایل telegraf.conf تغییر دهید.

مرحله 13: در نهایت ، Graphs را در Grafana ایجاد کنید

در نهایت ، Graphs را در Grafana ایجاد کنید
در نهایت ، Graphs را در Grafana ایجاد کنید

در نهایت ما برخی از داده ها را مشاهده می کنیم:-):-)

ابتدا باید یک اتصال به پایگاه داده ایجاد کنیم. به صفحه وب grafana http: [ip of PI]: 3000 بروید

1) با admin/admin وارد شوید

2) در ستون سمت چپ روی نماد چرخ دنده و منابع داده کلیک کنید

3) روی افزودن منبع داده کلیک کنید

4) روی influxdb کلیک کنید

5) برای URL آدرس https:// localhost: 8086 را وارد کنید

6) برای پایگاه داده تست را وارد کنید

7) برای HTTP GET را وارد کنید

8) برای حداقل فاصله زمانی 10 ثانیه را وارد کنید

9) روی ذخیره و آزمایش کلیک کنید ، باید نوشته شود "منبع داده کار می کند"

خوب ، اکنون ما یک اتصال به پایگاه داده داریم که می توان یک نمودار ایجاد کرد … در نهایت.

1) در ستون سمت چپ روی + و سپس Dashboard و Add New Panel کلیک کنید

2) برای پایگاه داده InfluxDB را کلیک کنید

3) اندازه گیری را کلیک کرده و کوگان را انتخاب کنید

4) برای فیلد Energy_Power را انتخاب کنید.

5) برای نام مستعار ، سری خود را نامگذاری کنید (به عنوان مثال ماشین ظرفشویی)

6) در سمت راست عنوان Panel Title یک نام به آن بدهید ، به عنوان مثال Power.

7) تمام است ، شما باید داده ها را ببینید. روی دکمه پیکان چپ کلیک کنید تا از ویرایش خارج شوید و سپس روی ذخیره کلیک کنید ، نامی را به داشبورد خود بدهید.

اگر تا اینجا کار بسیار خوبی انجام داده اید ، به طور جدی.

مرحله 14: چند نکته دیگر

چند نکته دیگر
چند نکته دیگر
چند نکته دیگر
چند نکته دیگر

پیکربندی پیش فرض Telegraf که من ارائه دادم کمی مراقبت بود زیرا بخش جدیدی برای هر دستگاه اضافه می شود و راه اندازی مجدد Telegraf باید انجام شود. با تغییرات زیر همه چیز را بسیار پویاتر می کند زیرا دستگاه ها را می توان بدون نیاز به تغییر تلگراف در پیکربندی Tasmota اضافه یا تغییر نام داد.

اولین تغییر قرار دادن + در نام موضوع است ، این اساساً یک علامت وحشی است. این به تنهایی کافی خواهد بود ، مگر زمانی که در Grafana نمودارها را ایجاد می کنید ، دستگاهها با مواردی مانند "tele/WashingMachine/SENSOR" ظاهر می شوند. قسمت دوم پیکربندی Telegraf در زیر پردازنده regex است. متن "WashingMachine" را از مرکز بیرون می آورد و آن را به یک برچسب جدید تبدیل می کند که به InfluxDB منتقل می شود.

توجه: اطمینان حاصل کنید که نام موضوع متفاوتی را در پیکربندی Tasmota برای هر دستگاه تنظیم کنید

[inputs.mqtt_consumer.tags] dest_db = "آزمایش"

پس از انجام این کار ، پیکربندی Grafana برای نمایش چندین دستگاه در یک نمودار بسیار آسان است. عکس پیوست شده به این مرحله نشان می دهد که چه کاری باید انجام شود. فقط روی علامت + در گروه بر اساس خط کلیک کرده و برچسب (دستگاه) را انتخاب کنید. در پایین در Alias By $ tag_device را وارد کنید. اکنون باید چندین سری را در یک نمودار مشاهده کنید. برای روشن و خاموش کردن هر مورد می توانید روی متن آنها کلیک کنید (ctrl برای انتخاب چندگانه کار می کند)

توصیه شده: