Servo + TMP 36

Koko_Leu
Offline
Зарегистрирован: 23.12.2020

Здравствуйте.

В ардуино только учусь, работаю в tinkerkad'е,учусь тут, вообщем нужно сделать программу, чтобы положения вала серводвигателя менялось в зависимости от данных, которые измеряются датчиком температуры

Минимальная Температура:20

Положение Серво при мин температуре:30

Максимальная Температура:70

Положение Серво при макс температуре:110

Вот попробовал сделать так:

#include <Servo.h>
 
Servo s1;

const int TMP36 = A0;
float temperature;
const int MinTemp=40;
const int MaxTemp=90;
 
void setup()
{
  s1.attach(6);
  Serial.begin(9600);
  pinMode(6, OUTPUT);
}
 
 
void loop()
{
  temperature=analogRead(0);         
  if(temperature = MinTemp){
  s1.write(50);
  }
  if(temperature = MaxTemp){
  s1.write(130);
  }
}

 

sadman41
Offline
Зарегистрирован: 19.10.2016
Koko_Leu
Offline
Зарегистрирован: 23.12.2020

sadman41 пишет:

http://arduino.ru/Reference/Map

Thx))

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

21 и 24 строки поправьте:
 

 if(temperature == MinTemp){

и сравнивать надо соразмерные величины int c int

BOOM
BOOM аватар
Offline
Зарегистрирован: 14.11.2018

Или приводить к общему типу (если это возможно).