Мазмұны:
- Жабдықтар
- 1 -қадам: Rasbian орнатыңыз
- 2 -қадам: кодты алу және оны орнату
- 3 -қадам: Arduino байланысы
- 4-қадам: Қосуды қосу
- 5 -қадам: кодты іске қосу
- 6 -қадам: (ҚОСЫМША) тұрғын үй
Бейне: Нақты уақыттағы ток өлшегіші бар автоматты қосқыш: 6 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:23
Маған автоматтандыру, бірдеңе болуы керек кезде бақылау мүмкіндігі өте ұнайды. Мені бұл идеяның пайда болуына себеп болды: өздігінен жасалған, автоматты розетка. Оны шамдарды қосуды, телефондарды зарядтауды немесе экранды қосу қажет болған кезде жоспарлауға болады. Осының бәрінен басқа, сіз розеткадан қанша ток ағып жатқанын көре аласыз.
Бұл жобаға қажет компоненттер:
Жабдықтар
Біз бастамас бұрын, мен сияқты Switch-IT қорабын жасау үшін сізге қажет нәрселер. Бұл жабдықтар сіздің аймаққа және ағымдағы бағаларға байланысты шамамен 50 -ден 100 евроға дейін болады.
Аппараттық құрал
Электроника
- Таңқурай пи 4
- 16 Гб (немесе одан көп) Micro SD картасы
- Ардуино Уно
- 5В-3.3В деңгейлік ауыстырғыш
- 5В релелік модуль
- ACS712 20A - ағымдағы модуль
- 1838 37,9 кГц ИҚ-қабылдағыш модулі
- IR қашықтан басқару пульті (мен Elegoo қолданамын)
- жалпы катодты RGB
- 3 * 330Ω резисторлар
- батырмаға басу
- RFID-RC522
- СКД 1602A-1
- Niko қабырғадағы розетка
- 10K Ω потметр
- 230 - 5В - 7А қуат көзі
Кабельдер
- USB-B-USB-A кабелі
- USB-C қуат кабелі
- Ethernet кабелі
Әр түрлі
- Әйел-еркек Jumperwires
- Еркек-еркек Jumperwires
- Дәнекерленген қалайы
- Кішірейтетін түтік
Корпустың арнайы бөліктері (ҚОСЫМША)
- 50 * жаңғақ пен қалың
- қақпағы бар 40x40x5 см металл корпус
- екі жақты таспа
- 6 * 1 см биіктіктегі аралықтар
- жетекші ұстаушы
- Велкро таспа
- кабельдік бағыттаушылар
Бағдарламалық қамтамасыз ету
- balenaEtcher:
- PuTTy
- расбиан
- Visual Studio коды
- Arduino IDE
1 -қадам: Rasbian орнатыңыз
Ең алдымен, біз Rasbian-ді SD-картасына қосамыз. Біз мұны balenaEtcher көмегімен жасаймыз.
- BalenaEtcher ашыңыз
- Расби кескінін таңдаңыз
- SD-картаны таңдаңыз
- Жыпылықтағанша Flash түймесін бірнеше минут күтіңіз
Жүктеу каталогына APIPA қосу: Біз APPA адресін RPI -дегі бағдарламалау мен конфигурациялау үшін қолданатын боламыз. Ол үшін:
- SD-картаның жүктеу каталогына кіреді
- «Cmdline.txt» ашыңыз
- Құжаттың соңына «169.254.10.1» дегенді қосып, сақтаңыз
- Жүктеу каталогына «ssh» деп аталатын файлды қосыңыз (бұл файлды ұзартпаңыз)
- Бұл әрекетті орындағаннан кейін SD картасын компьютерден шығаруға болады.
PuTTy көмегімен RPI -ге қол жеткізеді
Енді біз SD картасын RPI -ге қосамыз, RPI -ді компьютерге Ethernet кабелі арқылы қосамыз.
RPI-ге қосылу үшін біз PuTTy-ді APIPA-адреспен қолданамыз.
- PuTTy ашыңыз
- Біздің APIPA-адресті хост атауы ретінде толтырыңыз (169.254.10.1)
- Порттың 22 екенін және SSH таңдалғанын тексеріңіз
- Енді сіз қосылымды аша аласыз
- Әдепкі пайдаланушы аты: pi
- Әдепкі парольмен: таңқурай
raspi-config параметрлері
Raspi-config ашыңыз:
sudo raspi-config
- Пайдаланушы құпия сөзін өзгертіңіз
- Локализация опцияларында уақыт белдеуін таңдаңыз
- Wi-Fi желісін желілік опцияларды пайдаланып орнатыңыз, содан кейін SSID мен құпия сөзді енгізу қажет.
Python 3 орнатыңыз
Бұл жобада біз Python қолданамыз, сондықтан келесі командаларды қолдана отырып, әдепкі мәнді Python2 Python3 инстатына орнатамыз.
update-alternatives-install/usr/bin/python python /usr/bin/python2.7 1
update-alternatives-install/usr/bin/python python/usr/bin/python3 2
Python пакеттері
Барлығы дұрыс жұмыс істеуі үшін бізге бірнеше пакеттер қажет болады, негізінен Flask пакеттері және біздің DataBase -пен байланыс орнату үшін. Біз пакеттерді келесі пәрмендерді қолдана отырып орната аламыз:
pip Flask орнатыңыз
pip install Flask_cors pip install Flask_socketio pip install Python-mysql-connecton
Дерекқор
Келесі кезекте біз мәліметтер базасын басқару жүйесін (MariaDB) орнатамыз, біз мұны қолдана отырып жасаймыз:
sudo apt install mariadb-server
Жалғастыру үшін «Y» және Enter пернесін енгізіңіз. Бірнеше секундтан кейін орнату процесі аяқталды және MariaDB пайдалануға дайын болды.
Дерекқорға құпия сөзді беру үшін мына пәрменді қолданыңыз:
sudo mysql_secure_installation
Содан кейін Enter пернесін басыңыз, себебі қазіргі құпия сөз бос. Содан кейін құпия сөзді орнату үшін «Y» түймесін басыңыз, енді сіз кез келген құпия сөзді толтыра аласыз, оны есте сақтаңыз, себебі бізге артқы және алдыңғы жақ арасындағы дұрыс байланыс орнату үшін қажет.
Енді «Y» түймесін 3 рет басыңыз: жасырын пайдаланушыларды жою, түбірлік кіруге қашықтан тыйым салу және тест дерекқорын жою. Ақырында, артықшылықтарды қайта жүктеу үшін «Y» түймесін қайта басыңыз.
Енді MariaDB және барлық қажетті пакеттер сәтті орнатылды.
2 -қадам: кодты алу және оны орнату
Енді барлық пакеттер орнатылғаннан кейін біз кодты ала аламыз.
Код Github -те қол жетімді, сондықтан сіз оны клондауыңызға болады:
git clone
Бұл алдыңғы жақ
git clone
Бұл артқы жағы
Мәліметтер қорының өзін орнату
Деректер қорын орнату үшін келесі пәрмендерді қолданып, қалтаның қалтасында орналасқан.sql файлына өтіңіз (оны өз жолыңызға орнатқаныңызға көз жеткізіңіз.
mysql
mysql -u root -p switchit <Your_Path_to_Backend_Repo/switchit.sql -ден шығу үшін деректер қорын құру
Apache орнату
Енді бізде барлық код пен мәліметтер базасы орнатылғаннан кейін біз Apache-ді орнатып, оған біздің артқы жағымызды іске қосамыз. Біз мұны қолданамыз:
apt -get apache2 -y орнатыңыз
Содан кейін/var/ww/html файлдарын алдыңғы қалтадан қалтадағы файлдармен ауыстырыңыз.
Егер бәрі ойдағыдай болса, сіз өзіңіздің веб -сайтыңызға APIPA адресін қолдана аласыз: 169.254.10.1 шолғышта.
3 -қадам: Arduino байланысы
Қазіргі сенсорды және RFID сенсорын оқу үшін біз arduino қолданамыз, ол үшін төменде берілген arduino кодын қолданыңыз. Оны USB-A-USB-B кабелі мен arduino IDE бағдарламалық жасақтамасы арқылы жүктеңіз. Жүктелген кезде arduino бөлігі аяқталды.
Енді біз PI -де сериялық құрылғының атауын табуымыз керек. Ол үшін /boot/config.txt ішінде «enable_uart = 1» дұрыс орнатылғанына көз жеткізіңіз. Сондай -ақ, «console = serial0, 115200» cmdline.txt ішінен жойылғанына көз жеткізіңіз.
Содан кейін порттарды тексеріңіз
ls -l /dev
Содан кейін сериялық атаулардың бірі Arduino болуы керек. Бұл атауды app.py ішіндегі arduinocom функциясында толтырыңыз
ser = serial. Serial ('/dev/ttyS0', 9600)
Мұны сериялық байланыс жұмыс істемесе ғана жасаңыз.
4-қадам: Қосуды қосу
Барлығын қосу өте қарапайым, бірақ сіз мыналарды есте ұстауыңыз керек:
- Қабырғадағы розеткаға абай болыңыз, 230 вольт өлімге әкелуі мүмкін.
- RPI мен Arduino арасындағы байланыс үшін деңгейлік түрлендіргішті қолданғаныңызға көз жеткізіңіз.
- RGB дәнекерлемес бұрын, қызыл және жасыл түйреуішті пайдаланғаныңызға көз жеткізіңіз. Мұны алдын ала тексеріңіз!
- Электр тізбегін қосар алдында ештеңе тұйықталмағанын тексеріңіз.
5 -қадам: кодты іске қосу
Енді бәрі дұрыс қосылған, біз бағдарламаны іске қосамыз.
Оны іске қосу кезінде автоматты түрде іске қосу үшін келесі файлды жасаңыз:
sudo nano myscript.service
Содан кейін қойыңыз (өзіңіздің app.py каталогыңызды пайдаланғаныңызға көз жеткізіңіз:
[Unit] Description = After Switchit = network.target [Service] ExecStart =/usr/bin/python3 -u app.py WorkingDirectory = // app.py каталогына ауысу // StandardOutput = мұрагерлік StandardError = мұраға қайта жүктеу = әрқашан User = pi [Орнату] WantedBy = multi-user.target
Содан кейін «ctrl + X» пернелерін басып,/etc/systemd/system жүйесіне көшіріңіз.
Содан кейін оны автоматты түрде іске қосу үшін келесі пәрмен:
sudo systemctl myscript.service қызметін қосады
Бұл туралы қосымша ақпаратты RaspBerry Pi сайтынан таба аласыз.
Қайта жүктеу және аяқталды
Енді PI -ді қайта жүктеңіз:
sudo қайта жүктеу -h қазір
Switch-it-ді осылай жасайсыз!
Бізді қадағалағаныңыз үшін рахмет, бұл пайдалы болды деп үміттенемін. Егер сізде қандай да бір кеңестер немесе кері байланыс болса, пікір қалдырудан тартынбаңыз.
6 -қадам: (ҚОСЫМША) тұрғын үй
Сіз тұрғын үйді өз қалауыңыз бойынша жасай аласыз. Мен қақпағы бар 40х40х5 см өлшемді металл корпусты қолдандым. Мен металды қолданғандықтан, бәрін тесіктен алу үшін тесіктерді бұрғылауға және аралықтарды қолдануға тура келді. Мен 5V, 3.3V және gnd бар орталық нүктені пайдалануды таңдадым. Кез келген электрлік қосылым оның үстіне қысқаратын түтікпен дәнекерленген. Кабельді басқару үшін мен таспалы таспалары бар жастықшаларды қолдандым.
Ұсынылған:
Нақты уақыттағы сағат модулін қалай қолдану керек (DS3231): 5 қадам
Нақты уақыттағы модульді қалай қолдану керек (DS3231): DS3231-бұл температурасы компенсацияланған кристалды осцилляторы (TCXO) мен кристалы бар, бағасы төмен, өте дәл I2C нақты уақыт сағаты (RTC). Құрылғы аккумуляторлық кірісті қамтиды және негізгі қуат қосылған кезде дәл уақытты сақтайды
Raspberry Pi мен OpenCV көмегімен нақты уақыттағы Рубик кубының көзін байлаған шешуші: 4 қадам
Raspberry Pi мен OpenCV көмегімен Рубик текшесінің көзін байлаған шешуші: бұл Рубиктің текше құралының көзді байлап шешуге арналған екінші нұсқасы. Бірінші нұсқа JavaScript арқылы жасалған, сіз RubiksCubeBlindfolded1 жобасын көре аласызБұрынғыдан айырмашылығы, бұл нұсқа OpenCV кітапханасын пайдаланып түстерді және
Нақты уақыттағы су деңгейінің өлшегіші: 6 қадам (суреттермен)
Нақты уақыттағы ұңғыманың су деңгейін өлшеу құралы: Бұл нұсқаулар қазылған ұңғымаларда пайдалану үшін арзан, нақты уақыттағы су деңгейін өлшеуішті қалай құруға болатынын сипаттайды. Су деңгейін өлшейтін құрал қазылған ұңғыманың ішіне ілініп, су деңгейін күніне бір рет өлшеп, деректерді WiFi немесе ұялы байланыс арқылы жіберуге арналған
Нақты уақыттағы судың температурасы, өткізгіштігі мен су деңгейін өлшеуіш: 6 қадам (суреттермен)
Нақты уақыттағы ұңғымадағы судың температурасы, өткізгіштігі мен су деңгейін өлшеуіш: Бұл нұсқаулықта температураны, электр өткізгіштігін (ЕС) және қазылған ұңғымалардағы су деңгейін бақылауға арналған арзан, нақты уақыттағы су есептегішін құру әдісі сипатталған. Есептегіш қазылған ұңғыманың ішіне ілінуге, судың температурасын өлшеуге арналған, EC және
NODEMCU Lua ESP8266 нақты уақыттағы сағаты бар (RTC) және EEPROM: 7 қадам
NODEMCU Lua ESP8266 нақты уақыт сағаты (RTC) және EEPROM көмегімен: Деректер журналын жүргізгіңіз келсе, дұрыс уақытты алу өте маңызды. Уақытты Интернеттегі дереккөздерден алудың түрлі әдістері бар. Сіз өзіңізге уақыт бөлу үшін ESP8266 неге пайдаланбайсыз деп сұрауыңыз мүмкін? Сіз жасай аласыз, оның ішкі RTC бар (нақты уақыт