1. Należy dodać odpowiednią wielokrotność wywołania SuplaDevice.addDS18B20Thermometer(), następnie w get_temperature należy zwracać odczyt odpowiedniego termometru na podstawie numeru kanału.
2. 16 - takie ograniczenie jest ustawione w https://github.com/SUPLA/arduino/blob/m ... oto.h#L123 ale można to zwiększyć w zależności od dostępnej pamięci. Bez dodatkowych bibliotek spokojnie można zwiększyć do 128 i jeszcze zostanie trochę pamięci.
Arduino + supla.org - początki
-
- Posts: 27
- Joined: Thu Apr 21, 2016 10:05 am
Przez cały dzień miałem podłączone arduino do komputera bezpośrednio do gniazda usb i działa połączenie całą noc, mam też podłączony inny switch do sieci, zmienię później switch i przekonam się czy to jego wina.
Jeżeli chodzi o czujnik temperatury to czy będzie możliwość dodania czujnika DHT11 lub DHT22?
dzięki
Jeżeli chodzi o czujnik temperatury to czy będzie możliwość dodania czujnika DHT11 lub DHT22?
dzięki
-
- Posts: 19515
- Joined: Tue Jan 19, 2016 9:26 am
- Location: Paczków
Do Arduino można sobie podłączyć dowolny czujnik w tym DHT11 i DHT22 póki co jednak będzie tylko odczytywał temperaturę.
Mam już przygotowaną obsługę wilgotności ale jeszcze muszę dokończyć kilka rzeczy aby zrobić update serwera i aplikacji.
Mam już przygotowaną obsługę wilgotności ale jeszcze muszę dokończyć kilka rzeczy aby zrobić update serwera i aplikacji.
-
- Posts: 27
- Joined: Thu Apr 21, 2016 10:05 am
podpowiedziałbyś co mam zmienić żeby mi odczytywał temperaturę na DHT11 bo ma inną bibliotekę niż Dallas
-
- Posts: 19515
- Joined: Tue Jan 19, 2016 9:26 am
- Location: Paczków
Nie sprawdzałem (napisane "na kolanie")
#include <SPI.h>
#include <Ethernet.h>
#include <DHT.h>
#include <SuplaDevice.h>
DHT dht(24, DHT11);
double get_temperature(int channelNumber, double last_val) {
double t = dht.readTemperature();
return isnan(t) ? -275 : t;
}
void setup() {
Serial.begin(9600);
dht.begin();
SuplaDevice.setTemperatureCallback(&get_temperature);
.......
#include <SPI.h>
#include <Ethernet.h>
#include <DHT.h>
#include <SuplaDevice.h>
DHT dht(24, DHT11);
double get_temperature(int channelNumber, double last_val) {
double t = dht.readTemperature();
return isnan(t) ? -275 : t;
}
void setup() {
Serial.begin(9600);
dht.begin();
SuplaDevice.setTemperatureCallback(&get_temperature);
.......
-
- Posts: 27
- Joined: Thu Apr 21, 2016 10:05 am
dzięki wielkie wieczorem spróbuje,
po co podaje się tą wartość -275?
po co podaje się tą wartość -275?
-
- Posts: 19515
- Joined: Tue Jan 19, 2016 9:26 am
- Location: Paczków
Jak jest błąd odczytu lub brak czujnika to musimy przesłać odpowiednią informację na serwer. Nie możemy wysłać zera ponieważ to poprawna temperatura. -275 to ~2 stopnie poniżej zera absolutnego czyli spoza zakresu co serwer uznaje za błąd odczytu lub brak czujnika.
-
- Posts: 6
- Joined: Wed Apr 20, 2016 10:43 am
Dziękuję za odpowiedź.pzygmunt wrote:1. Należy dodać odpowiednią wielokrotność wywołania SuplaDevice.addDS18B20Thermometer(), następnie w get_temperature należy zwracać odczyt odpowiedniego termometru na podstawie numeru kanału.
2. 16 - takie ograniczenie jest ustawione w https://github.com/SUPLA/arduino/blob/m ... oto.h#L123 ale można to zwiększyć w zależności od dostępnej pamięci. Bez dodatkowych bibliotek spokojnie można zwiększyć do 128 i jeszcze zostanie trochę pamięci.
Proszę o podpowiedź bo chyba sobie z tym nie poradzę (na dzień dzisiejszy za małe umiejętności w programowaniu) jak dodać czujniki ds18b20 do arduino mega, jakie pliki modyfikować aby poprawnie odczytywać temperaturę.
Czy czujniki dodajemy na tym samym porcie czy możemy wykorzystać kilka aby instalacja czujników była bardziej przejrzysta.
-
- Posts: 19515
- Joined: Tue Jan 19, 2016 9:26 am
- Location: Paczków
Jest gotowy przykład o nazwie SuplaEthernetShield_DallasTemperature
gdzie wystarczy uzupełnić GUID i podłączyć czujnik do pin-u 24.
Czujniki są na 1-wire tak więc na jednym pin-ie można podłączyć więcej czujników.
gdzie wystarczy uzupełnić GUID i podłączyć czujnik do pin-u 24.
Czujniki są na 1-wire tak więc na jednym pin-ie można podłączyć więcej czujników.
-
- Posts: 27
- Joined: Thu Apr 21, 2016 10:05 am
Witam
kupiłem czujnik Sonda wodoodporna z czujnikiem temperatury DS18B20
i mam pytanie czy do arduino też muszę podłączyć go przez rezystor? czy nie? bo podłączyłem bez rezystora i nic nie wskazuje.
dzięki
kupiłem czujnik Sonda wodoodporna z czujnikiem temperatury DS18B20
i mam pytanie czy do arduino też muszę podłączyć go przez rezystor? czy nie? bo podłączyłem bez rezystora i nic nie wskazuje.
dzięki