Нужна помощь с алгоритмом термостабилизации.

Psychedelic41
Offline
Зарегистрирован: 19.05.2016

Есть старый алгоритм термостабилизации, необходимо его модернизировать. Принцип такой: с цифрового выхода микроконтроллера подается дискретный сигнал на вход однофазного тиристорного усилителя, что, в свою очередь, открывает тиристор и начинается процесс нагрева столика печки. Температура растет до тех пор, пока сигнал на аналоговом входе микроконтроллера с термопары не достигнет значения в 800оС. При достижении требуемой температуры микроконтроллер перестает подавать сигнал на усилитель.После отключения питания на печке начинается процесс остывания образца который длится N минут. Самый смак в том, что теперь добавилась матричная клавитура 4х4 для ввода параметров. 3 параметра - температура, дельта(число с минусом, задается в зависимости от инерционности печи) и время. Подскажите как можно это реализовать. Прикладываю предыдущий алгоритм. Все схемы так же могу приложить, расписать к каким портам все идет итд. 

#include <LiquidCrystalRus.h>

LiquidCrystalRuslcd(12, 11, 5, 4, 3, 2);

void setup() {
Serial.begin(9600);
pinMode(6,INPUT_PULLUP);
pinMode(13,OUTPUT);
lcd.begin(16, 2);
}
void loop() {
lcd.clear();
int val = analogRead(A0);
int sensorValue = analogRead(A1);
int vax = 0;
val = val * 500.0/1023;
lcd.setCursor(0,8);
lcd.print("TD=");
lcd.setCursor(3,3);
lcd.print(sensorValue);
delay(500);
vax = val * 2.5;
lcd.setCursor(0,0);
lcd.print("Температура");
lcd.setCursor(12,0);
lcd.print(vax);
delay(500);
Serial.println(val);
if((vax)>(sensorValue)){
digitalWrite(13,LOW);
  }
if((vax)<(sensorValue)){
digitalWrite(13,HIGH);
  }
}

 

Onkel
Offline
Зарегистрирован: 22.02.2016

вам нужно написать и добавить в ваш код  ПИД регулятор? Пишите ydom coбaкa mail.ru

что-то мне подсказывает, что кроме термопары есть еще и усилитель термопары.

pcb
Offline
Зарегистрирован: 02.04.2015

От 7 т.р.

Почта:PCBADM на мэйл.ру
Или через форму