• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
LM35+Steam Sensor jak??
#1
Witam, jestem nowy w świecie arduino  więc proszę o wyrozumiałość.
Chcę połączyć LM35+Steam Sensor tak aby otrzymywać z nich dane, ale jakoś mi to nie wychodzi, kiedy testuję je osobno wszystko jest dobrze. A kiedy używam kodu, który jest poniżej czujniki wariują i nie działają poprawnie. Jak już wspomniałem jest kompletnie nowy w tym co robię i proszę o wyrozumiałość.
#define LM35 A5
int sensorValue = 0;
void setup(){
  Serial.begin(14400);
}
 
void loop(  float temperatura = ((analogRead(LM35) * 5.0) / 1023.0) * 100;

  Serial.print("Aktualna temperatura: ");
  Serial.print(temperatura);
  Serial.println("*C"); 
 sensorValue = analogRead(0);  
 Serial.println(sensorValue); 
 delay(1000);      
}
 
Odpowiedź
#2
A nie masz aby literówki? Jak wygląda u Ciebie konstrukcja funkcji loop()? Gdzie jest otwarcie nawiasu klamrowego?
Co do czujnika pary... gdzie jest podpięty? Z pinu cyfrowego 0 nie odczytasz analogowej wartości.
Poza tym niektóre wersje IDE nie obsługują prędkości wyższej niż 9600.
 
Odpowiedź
#3
Zacznę jeszcze raz, bardziej zrozumiale dla nas dwóch. Chciałbym połączyć te dwa kody w jeden:
Kod:
void setup() {

Serial.begin(9600);// open serial port, set the baud rate to 9600 bps
} void loop() {

int sensorValue;
sensorValue = analogRead(0);   //connect Steam sensors to Analog 0
Serial.println(sensorValue); //print the value to serial  
delay(200);      
}


#define LM35 A5

void setup(){
 Serial.begin(9600);
}

void loop(){
 //Przeliczenie odczytu ADC na temperaturę zgodnie z opisem z kursu
 float temperatura = ((analogRead(LM35) * 5.0) / 1023.0) * 100;

 //Wyslanie przez UART aktualnej temperatury
 Serial.print("Aktualna temperatura: ");
 Serial.print(temperatura);
 Serial.println("*C");

 delay(200);
}

wychodzi cos takiego



#define LM35 A5
void setup() {

Serial.begin(9600);// open serial port, set the baud rate to 9600 bps
} void loop() {

int sensorValue;
 sensorValue = analogRead(4);   //connect Steam sensors to Analog 0
 Serial.println(sensorValue); //print the value to serial  
 delay(200);    
 float temperatura = ((analogRead(LM35) * 5.0) / 1023.0) * 100;
 Serial.print("Aktualna temperatura: ");
 Serial.print(temperatura);
 Serial.println("*C");
}
Otwieram serial monitor a obydwa czujnik wariują, zapewne robię coś źle tylko jeszcze nie wiem co. Licżę na pomoc.

Następnym razem dam negatywa za brak code
 
Odpowiedź
#4
Problem polega na tym że zamiast poczytać i się czegoś nauczyć to w ciemno próbujesz złożyć do kupy dwa programy.
Pod który pin analogowy masz podpięty drugi czujnik bo kod nie zgadza się z komentarzem:
sensorValue = analogRead(4); //connect Steam sensors to Analog 0
Pomagam za darmo więc szanuj mój czas.
Wklejaj tekst a nie jego zdjęcie.
Nie pisz następnego postu jak nie odpowiedziałeś na poprzedni.
Jak mądrze zadawać pytania
 
Odpowiedź
#5
Podrzuć schemat. Namok napisał o tym samym, o czym ja wcześniej. Program wydaje się być poprawny, ale prawdopodobnie skopałeś podłączenie czujników (konkretnie steam sensor).
 
Odpowiedź
#6
       
 
Odpowiedź
#7
Na zdjęciu mają być widoczne czujniki(ich podpięcie). Same kabelki nic nie pomogą.
Pomagam za darmo więc szanuj mój czas.
Wklejaj tekst a nie jego zdjęcie.
Nie pisz następnego postu jak nie odpowiedziałeś na poprzedni.
Jak mądrze zadawać pytania
 
Odpowiedź
#8
   
 
Odpowiedź
#9
Czy tak ciężko zrobić zdjęcie aby wszystko było dobrze widoczne?
Pomagam za darmo więc szanuj mój czas.
Wklejaj tekst a nie jego zdjęcie.
Nie pisz następnego postu jak nie odpowiedziałeś na poprzedni.
Jak mądrze zadawać pytania
 
Odpowiedź
#10
       
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości