Pokazywanie postów oznaczonych etykietą ov5647. Pokaż wszystkie posty
Pokazywanie postów oznaczonych etykietą ov5647. Pokaż wszystkie posty

poniedziałek, 30 stycznia 2023

Aktualizacja raspberry na Zawodziu

Mam na działce trzy raspberry pi, każde wyposażone w standardową kamerę oraz czujnik BME 280 (temperatura/ciśnienie/wilgotność/.)

Ponieważ czujnik czasami szwankował co być może było spowodowane kiepskim montażem, a kamera robiła zdjęcia kiepskiej jakości, to sobie wymyśliłem upgrade. Konkretnie, że zmienię kamerę na OV5647/5MP z szerokokątnym obiektywem (175 stopni), a do BME 280 dodam niezawodny DS18B20, który wprawdzie mierzy tylko temperaturę ale za to dokładnie.

Połączenia wtyki czujników/GPIO są następujące:

  • BME280: Vcc--01, SDA--03, SCL--05, Gnd---06.
  • DS18B20: Vcc--17, SDA--07 oraz Gnd--09.

Podłączyłem wszystko tym razem porządniej (a przynajmniej tak mi się wydaje.) Nowa kamera wymagała większej dziury i innego sposobu umocowania na pokrywie obudowy.

Dla przypomnienia: BME 280 testuje się czy działa wydając polecenie:

i2cdetect -y 1

Co powinno skutkować wypisaniem kilkudziesięciu kresek i liczby 76. Jeżeli są same kreski coś nie działa.

Czujnik DS18B20 z kolei powinien być widoczny tutaj:

ls -l /sys/bus/w1/devices/w1_bus_master1/

Tam powinien być numer czujnika, moim przypadku jest to 28-4680e30264ff. Temperaturę się czyta po prostu

#!/bin/bash
# Odczyt temperatury z zapisem do loga  
LOG_DIR=/home/pi/Logs/Digitemp

SENS="28-4680e30264ff"
TIME="`date "+%Y%m%d%H%M%S"`"
TEMP="`cat /sys/bus/w1/devices/${S1}/w1_slave | tr '\n' ' '`"

echo "$TIME;$SENS;$TEMP" >> $LOG_DIR/digitemp.log

Przy okazji przetestowałem też AHT10 (temperatura/wilgotność), który działa ale z obsługą jest już słabo. Znalazłem mianowicie skrypt w Pythonie drukujący temperaturę z dokładnością do stopnia a innych skryptów, które by podawały dokładniej, nie udało mi się uruchomić. W google zresztą podejrzanie mało informacji na temat AHT10+raspberry.

Przy okazji też przetestowałem patent na skonfigurowanie rpi z wieloma sieciami WiFi:

 /etc/wpa_supplicant/wpa_supplicant.conf
##====
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
        ssid="network1"
        psk="password1"
        id_str="id-string1"
}

network={
        ssid="network2"
        psk="password2"
        id_str="id-string2"
}

Teraz mogę sobie przynieść pi z działki, włączyć i mi się połączy z WiFi w domu też:-)