INHOUDSOPGAWE:

Hot Plate Automatic Control System (HPACS): 3 stappe
Hot Plate Automatic Control System (HPACS): 3 stappe

Video: Hot Plate Automatic Control System (HPACS): 3 stappe

Video: Hot Plate Automatic Control System (HPACS): 3 stappe
Video: Hot Plate Automatic Control System - HPACS 2024, Mei
Anonim
Hot Plate Automatic Control System (HPACS)
Hot Plate Automatic Control System (HPACS)
Hot Plate Automatic Control System (HPACS)
Hot Plate Automatic Control System (HPACS)

Hierdie projek is daarop gemik om 'n eenvoudige, intuïtiewe manier te gee om te verstaan hoe u outomatiese PID -tuning kan doen met 'n verwarmer. Wat ek gemaak het, is gebaseer op die Åström – Hägglund-metode om parameters af te lei met behulp van knal-knalbeheer om stelseleienskappe te openbaar en parameters wat later op grond van hierdie kennis gekies is, te kies. Daar is niks geheim nie en inligting kan hier gevind word: https://en.wikipedia.org/wiki/PID_controller#Loop… En om parameters te kies, kan u 'n bietjie hier lees: https://en.wikipedia.org/ wiki/PID_controller#lus …

Om dit lekker te maak, word 'n Nextion 3.2 HMI-koppelvlak bygevoeg vir gebruikersinvoer en om verskillende veranderlikes intyds te vertoon. MAAR ek het ook 'n seriële terminale weergawe van die biblioteek gemaak wat die projek goedkoper maak!

Die werklike agtergrondverhaal is dat ek my pa deels belowe het om 'n temperatuurbeheer te maak vir die smelt van byewas, deels wou ek my basiese beheerteorie verfris en laastens wou ek kyk na die outomatiese afstelling van PID -beheerders. Aan die kant het ek dit ook reggekry om vir Sous Vide lekker steaks en Bearnaisesous te maak as deel van die toets!

WAARSKUWING

Ek werk hier met 230 V, wat gevaarlik is as jy nie weet wat jy doen nie! Ek is 'n elektrisiën en elektronika -ingenieur, so ek het 'n bietjie ervaring hier, maar werk NIE met 230 V as u nie gemaklik daarmee is nie, en wees versigtig om nie aan lewendige drade te raak nie! Pasop ook vir die goedkoop SS-relais met betrekking tot moontlike brandgevaar, aangesien dit deur sommige mense gesien is (nie deur my nie).

Voorrade

  • 'N Goedkoop WASCO -kookplaat (kan 'n beter een wees - byvoorbeeld 'n Ikea -induksiebord)
  • 'N Goedkoop SS-aflos
  • 'N Dallas onewire temperatuur sensor
  • 'N Arduino Mega
  • (Opsioneel) 'n Nextion 3.2 "HMI -koppelvlak/skerm
  • 5V kragtoevoer vir die Arduino

Stap 1: Montering

Vergadering
Vergadering
Vergadering
Vergadering
Vergadering
Vergadering
Vergadering
Vergadering

Ek het slegs 'n omhulsel vir die HMI -weergawe van die projek gebou, want dit is wat ek uiteindelik gebruik het. Ek het dus 'n omhulsel gemaak vir die aanpassing van relais, HMI en Arduino. Ek het ook 'n klem vir die temperatuursensor gemaak net omdat ek kon …

Stap 2: Kodering

Kodering
Kodering

Al die kode vir HMI en Arduino is beskikbaar by my Git repo vir die projek.

Ek het baie kommentaar gelewer in die kode om dit makliker te maak om te lees en te verstaan. Maar in wese het ek 'n baie stadige PWM vir die kookplaat opgestel en 'n timeronderbreking vir die staatsmasjien/-kontrole, en dit is regtig dit.

Dan is daar natuurlik die afstemroetine en die beheer self + HMI of Serial interface …

Ek doen iets waarvan ek nie 'n groot fan is in hierdie kode nie, en dit is om seriële druk in 'n timeronderbreking te gebruik. Reeksafdruk neem baie tyd en moet regtig vermy word tydens 'n tydonderbreking …

Die tuning werk soos volg:

  1. Stel PWM -dienssiklus op 40%
  2. Wag totdat die ingestelde temperatuur bereik is
  3. Stel PWM -dienssiklus op 0%
  4. Wag totdat die temperatuur onder die ingestelde waarde is
  5. Herhaal stap 1-4 totdat bv. 3 periodes met byna dieselfde tyd en amplitude word gesien
  6. Bereken paraemters vir PID gebaseer op die bogenoemde

Redelik eenvoudig;)

Stap 3: Toets

Toets!
Toets!
Toets!
Toets!
Toets!
Toets!

Noudat die kodering klaar is, is dit tyd om te toets. In die vorige afdeling het ek die stemming grafies van 'n toets gewys - daarom hoef u nie veel meer te sê nie. Maar 'n paar toetse met behulp van die verkry parameters word hier getoon.

Aanbeveel: