Съдържание:

Автоматизирана система за мониторинг на речните води: 14 стъпки
Автоматизирана система за мониторинг на речните води: 14 стъпки

Видео: Автоматизирана система за мониторинг на речните води: 14 стъпки

Видео: Автоматизирана система за мониторинг на речните води: 14 стъпки
Видео: Запускаю бизнес на 1 день на дропшиппинге - СКОЛЬКО ЗАРАБОТАЛ? 2024, Юли
Anonim
Автоматизирана система за мониторинг на речните води
Автоматизирана система за мониторинг на речните води
Автоматизирана система за мониторинг на речните води
Автоматизирана система за мониторинг на речните води

Тази инструкция се използва за документиране на разработването на автоматизирана система за мониторинг на речните води. Наблюдаваните параметри са нивото на водата и температурата на водата. Целта на този проект беше да се разработи евтин и независим регистратор, който е свързан към база данни. Нивото на водата се следи със специално QR ниво. Камера в Pi прави снимка на всеки 15 минути. QR-кодовете на тази снимка се декодират от софтуер и са показателни за действителното ниво на водата. Температурата на водата се измерва със сензор DS18B20.

Консумативи

  1. Raspberry Zero WH
  2. WittyPi Mini
  3. Модул на Raspberry Pi камера v2.1
  4. Huawei E3531 SurfStick
  5. SIM карта (ThingsMobile)
  6. DC DC Step Down Buck Converter
  7. Цифров термометър DS18B20
  8. OTG микро USB кабел
  9. Край на микро USB кабел
  10. Стъклен прозорец
  11. Запечатан корпус (G258)
  12. Кабелен монтаж
  13. 3-пинов терминален блок Srew
  14. 4, 7kOhm резистор
  15. Празна платка 65x30 мм
  16. 40-пинов заглавие
  17. 4 x M3x20 винтове
  18. 8 винта xM3
  19. Телефонен кабел
  20. Кабел за високоговорители

Стъпка 1: Запояване на температурния модул

Запояване на температурния модул
Запояване на температурния модул
Запояване на температурния модул
Запояване на температурния модул
Запояване на температурния модул
Запояване на температурния модул

В тази стъпка създаваме температурен модул от нулата. Той има размер на pHAT и може да бъде свързан към 40-пиновия GPIO на Pi. Този метод ни позволява сигурно монтиране на сензора DS18B20 към Raspberry Pi.

  1. Първо, трябва да запояваме 40-пиновата заглавна колона към празната платка 60x35 mm.
  2. Поставете винтовия клемен блок и резистора на място, както е показано на снимката
  3. Свържете резистора към външните щифтове на клемния блок
  4. Запоявайте резистора и щифтовете заедно
  5. Запоявайте кабелите (черен, червен и жълт) към точните щифтове на заглавната колона и към щифтовете на клемния блок
  6. За да пробиете монтажните отвори, първо монтирайте модула към вашата малинова pi нула, след това пробийте с 3 мм свредло през съществуващите отвори от вашия Raspberry Pi във вашия нов модул.
  7. И накрая, можете да свържете вашия сензор DS18B20 към вашия модул, като свържете кабелите на вашия сензор към съответните цветове на вашата платка.

Стъпка 2: Изграждане на нашия DCDC конверторен кабел

Изграждане на нашия DCDC конверторен кабел
Изграждане на нашия DCDC конверторен кабел
Изграждане на нашия DCDC конверторен кабел
Изграждане на нашия DCDC конверторен кабел

За да захранваме нашия Raspberry Pi, трябва да преобразуваме 12V, които получаваме от батерията си, в 5V. Използваме DC DC доларов преобразувател, за да намалим напрежението.

  1. Запоявайте черния проводник от кабела на високоговорителя към порта с надпис GND
  2. Запоявайте червения проводник към порта с надпис IN+
  3. Запоявайте черния проводник от вашия micro-USB кабел към порта с надпис GND
  4. Запоявайте червения проводник от вашия micro-USB кабел към порта с надпис OUT+
  5. Изрязване на веригата, маркирана с червената стрелка на изображението
  6. Заварете свързващите подложки заедно, за да получите фиксиран изход 5V (синя стрелка)

Стъпка 3: Инсталиране на Surfstick

Инсталиране на Surfstick
Инсталиране на Surfstick
Инсталиране на Surfstick
Инсталиране на Surfstick
Инсталиране на Surfstick
Инсталиране на Surfstick

За да установим интернет връзка, трябва да свържем нашия сърф стик към нашия Raspberry Pi. Първо трябва да направим някои конфигурации:

  1. Поставете SIM карта от мобилния оператор по ваш избор, във вашия сърф. В този пример използваме SIM от Things Mobile.
  2. Свържете вашия сърф стик към компютъра чрез USB.
  3. В браузъра ви трябва да се отвори прозорец.
  4. Под Настройки> Управление на профили променете APN на този на вашия мобилен оператор. За Things Mobile това е "TM".
  5. Активирайте функцията за роуминг под Настройки> Мобилна връзка и „Включване“Мобилни данни.
  6. Щракнете върху Приложи.
  7. На началната страница можете да проверите дали е установена връзка.
  8. Сега е добре да излезете, изключете пръчката за сърф.
  9. Сърфът може да бъде свързан към вашата малина без допълнителни конфигурации.

Стъпка 4: Създайте PostgreSQL база данни

В тази стъпка ние създадохме нашата база данни. Ние използваме безплатната оферта от Amazon Web Services.

  1. Първо създайте безплатен акаунт в AWS:
  2. Следвайте този урок, за да създадете своя база данни PostgreSQL и да научите как да се свържете с нея:

Стъпка 5: Подготовка на SD картата

Първо трябва да изтеглите изображението на Raspian Stretch Lite:

Изтегляне на Raspberry Pi

Сега трябва да премигнем изображението на празна SD карта (поне 16 GB). Поставете SD картата в четеца на SD карти. Изтеглете Balena Etcher и го инсталирайте на компютъра си:

www.balena.io/etcher/

Отворете Balena Etcher, изберете.zip файла на вашето Raspian изображение, което сте изтеглили преди това. Изберете вашата SD-карта в Select Drive. Щракнете върху Flash!

Стъпка 6: Инсталиране на малината и свързване към нея чрез SSH

Преди да можем да използваме нашия Raspberry Pi, трябва да направим някои първоначални настройки.

  1. Поставете вашата SD-карта в вашия Raspberry Pi и я свържете с монитор, клавиатура и мишка. (Ако нямате допълнителен монитор, клавиатура и мишка, можете да направите инсталация без глава. Потърсете, това е било направено преди)
  2. Следвайте стъпките за настройка на вашия Raspberry Pi [wifi, език, часова зона]
  3. Активирайте SSH чрез терминал на вашия PI: sudo raspi-configgo до: 5 Опции за взаимодействие Активирайте SSH
  4. На вашия компютър изтеглете Termius. Тази програма улеснява свързването с Raspberry Pi чрез SSH.1. https://termius.com/2. Направете акаунт

    3. Създайте НОВ HOST4. Дайте на Raspberry етикет (изберете име) 5. Въведете IP-АДРЕСА на вашия PI от МРЕЖАТА, в която е регистриран (ако не познавате IP-ADRESSE, можете да го потърсите с програма, наречена „ADVANCED IP SCANNER“) 7. Въведете потребителското си име (пи по подразбиране, ако не е променено) 8. Въведете паролата си (по подразбиране малинка, ако не е променена) 9. Щракнете върху запазване 10. Щракнете двукратно върху новия си създаден хост 11. Изскача съобщение -> щракнете върху да

Вашата малинка трябва да бъде свързана към вашия компютър чрез SSH

Стъпка 7: Инсталиране на регистратора

  1. Активирайте камерата в опциите за свързване: sudo raspi-configgo до: 5 Опции за свързване Активирайте Camerasudo рестартиране
  2. Създайте нова директория във вашия /home /pi directorycd /home /pisudo mkdir Desktop
  3. Създайте нов python файл в Desktop Directorycd Desktopsudo nano ctrl+ocall файла qrbooftemp.pyenterctrl+x
  4. Инсталирайте пакета pyboof (numpy и py4j се инсталират автоматично) това може да отнеме до 40 минути. Sudo pip3 инсталирайте pyboof == 0.33.1
  5. Стартирайте актуализация (ако не направите това, може да получите проблеми при инсталирането на пакети по-късно) sudo apt-get updatesudo apt-get install libpq-dev
  6. Инсталирайте postgreSQL и psycopg2, за да взаимодействате с базата данни postgreSQL чрез Pythonsudo apt-get инсталирайте postgresqlsudo pip3 инсталирайте psycopg2

Стъпка 8: Инсталиране на регистратора (температурен модул)

Инсталиране на регистратора (температурен модул)
Инсталиране на регистратора (температурен модул)

За да инсталирате температурния модул, трябва да монтирате модула на вашия Raspberry Pi със свързан към него сензор DS18B20. Модулът се монтира чрез 40-пинов хедър.

  1. активирайте 1-проводник в опцията за свързване sudo raspi-configgo към: 5 Опции за интерфейс Активирайте 1-Wiresudo рестартиране
  2. задайте 1-Wire щифт на пин 23 и gpu_mem = 256sudo nano /boot/config.txt добавете dtoverlay = w1-gpio, gpiopin = 23, pullup = в края на промяната на файла gpu_mem = 128 до gpu_mem = 256
  3. активирайте 1-Wiresudo modprobe w1-gpiosudo modprobe w1-thermsudo рестартиране
  4. разберете вашия адрес на вашия DS18B20, той трябва да започне с 28-… cd/sys/bus/w1/devices, напишете адреса, по-късно е необходим в скрипта на Python

Стъпка 9: Изтеглете и коригирайте Pyhton Script

  1. Изтеглете скрипта Python на компютъра си и го отворете в текстов редакторhttps://github.com/gremax93/QR-Code-Water-Level
  2. Копирайте пълния скрипт в клип дъската си (ctrl+a, ctrl+c)
  3. Отидете на предварително създадения от вас python filecd/home/pi/Desktopsudo nano qrbooftemp.py
  4. Щракнете с десния бутон, за да вмъкнете скрипта
  5. Променете адреса на сензора за температура на този, който преди това сте записали
  6. Променете настройката на връзката postgresql към вашата конкретна информация, както е посочено в скрипта
  7. Запишете и излезте от опциятаctrl+oenterctrl+x

Стъпка 10: Инсталиране на модула WittyPi

  1. Изтеглете инсталационния файл от Witty Pi wget
  2. Стартирайте инсталационния скрипт sudo sh installWittyPi.sh
  3. Рестартирайте sudo reboot

Стъпка 11: Направете някои промени в настройката на Java Virtual Machine

Тази стъпка е необходима, за да сте сигурни, че JVM ще стартира, когато се изпълни скриптът на python.

  1. Отидете в директорията py4j и отворете jawa_gateway.py cd /usr/local/lib/python3.5/dist-packages/py4jsudo nano jawa_gateway.pyset DEFAULT_CALLBACK_SERVER_ACCEPT_TIMEOUT = 20
  2. Отидете в директорията pyboof и отворете _init _. Pycd /usr/local/lib/python3.5/dist-packages/pyboofsudo nano _init _. Pyset while time.time () - start_time <20.0

Стъпка 12: Задайте Cron Job

В тази стъпка задаваме cronjob, когато малината се зарежда. По този начин всеки път, когато Pi се събуди, нашият скрипт на python се изпълнява.

  1. Задайте cronjob и го запишете в лог файл. Това прави отстраняването на неизправности по -ефективно.crontab -e@reboot sleep 20 && sudo python3 /home/pi/Desktop/qrbooftemp.py >> /home/pi/Desktop/log.txt
  2. Добавете друг ред към crontab. Този ред гарантира, че когато WittyPi успее, Raspberry Pi се рестартира така или иначе.@Reboot sleep 1500 && sudo rebootctrl+oenterctrl+x

Стъпка 13: Съберете всичко заедно

Събирайки всичко заедно
Събирайки всичко заедно
Събирайки всичко заедно
Събирайки всичко заедно
Събирайки всичко заедно
Събирайки всичко заедно
  1. Уверете се, че вашият Pi е изключен, ако не, изключете го надолу, изключване -h сега
  2. Подредете своя WittyPi на вашия Raspberry Pi и температурния модул отгоре.
  3. Завийте 3 -те модула заедно
  4. Прикрепете модула на камерата към CSI порта на малина pi нула
  5. Прикрепете вашия сърф към вашия Raspberry Pi чрез USB OTG кабел
  6. Прикрепете захранващия кабел към WittyPi (не към Raspberry Pi!)
  7. Поставете всичко в корпуса и завийте капака
  8. Прикрепете захранващия кабел към батерията
  9. Поздравления, че вашият регистратор трябва да работи!

Стъпка 14: Окончателна инсталация

Окончателна инсталация
Окончателна инсталация
Окончателна инсталация
Окончателна инсталация

Тези снимки показват монтирания регистратор с инсталиран QR-код на нивото на водата.

Дърводобивите бяха инсталирани под мост за оптимални резултати. Трябва да се избягва пряката слънчева светлина.

Препоръчано: