Sida 1 av 2

Styra CTC-panna och Värmegolv med PC.......hmmm? * KLART *

Postat: 1 december 2006, 21:07:09
av Mackan
Givetvis så rasade min gamla styrning till kombipannan i källaren(shuntmekaniken)........och som en beställning på posten så så gick styrningen till värmegolvet i halllen oxå sönder(det var nån gammal relälösning :? )
Vad göra..........ringde CTC och kollade med dom vad dom tog för ett nytt system........tjohoooo.....endast dryga 5000:- ........nej tack.......speciellt med tanke på att vi funderar på att byta pann nästa år eller året efter det.
Hmmmm :?:

Gammal 400Mhz labbdator..........med en parallellport....... :humm:
JAVIST..........jag fixar det själv.......... :vissla:

Beställde.........följande:

Serieportsvarianten av
http://www.elfa.se/elfa-bin/setpage.pl? ... k=9990.htm

4st
http://www.elfa.se/elfa-bin/setpage.pl? ... 227425.htm

samt 3st
http://www.elfa.se/elfa-bin/setpage.pl? ... k=2017.htm

Och en ny shuntmekanik........som skall ställa värmen på framledningen till elementen.

Jag har börjat att hacka mjukvaran i Borland C++ builder och kommit en bit på vägen.
Golvvärmeregleringen är färdig och fungerar klockrent.......jag ställer börvärde med en dragregel och om börvärdet är mindre än riktiga temperaturen slår jag av golvet och sedan givetvis tvärt om när börvärdet är högre än riktiga tempen slår jag på golvet via en "bit" på den avklippta kabeln på parallellporten

Temperaturena(Ute, Framledning, Pann och golvtemp) tar jag in via seriesnöret från utvecklingskortet och ritar ut dessa i 4st grafer.

Nu till en fundering...........jag öppnar serieporten med följande rad

Kod: Markera allt

handle = open("COM1", O_RDONLY | O_TEXT);
Nu till kruxet............porten öppnas med rätt baudrate men körs med fel konfigurering......... hanskakning osv.........är det någon som har en liten kodsnutt som visar hur man ställer in konfigureringen :?: . I dagsläget så kör jag ZOC-före mitt program för att det skall bli rätt konfig......hjälp :!:

Jag har även lagt in signalhanteringen för shuntningen av pannan...........230V......på en signal = varmare..........230V.....på den andra signalen = kallare.
Nu är det reglerkurvan kvar som skall in.........utetemp kontra framledningstemperatur.

Kablarna till pannan är färdigdragna så det blir till att mecka ihop ett litet kappslat kort med 230V......samt signalerna ifrån printerporten.

Mycket text och inga bilder tänker ni nu..........det kommer bilder under helgen :)

Postat: 1 december 2006, 21:11:23
av Icecap
Ladda hem komponenten "Tpapro", det är en serieportsinterface-komponent som är mycket enkel att använda. Jag använder själv BCB6 med TPAPRO till väldig mycket.

TPAPRO = TurboPower Async PRO, ett paket som blev gratis (på riktigt) då TurboPower stängde.

Postat: 1 december 2006, 21:57:09
av vfr
Exempel:

Kod: Markera allt

void __fastcall CSerialCom::SetupComm(void)
{
   DCB dcb;
   BOOL fSuccess;

   hCom = CreateFile(ComPort.c_str(),
                     GENERIC_READ | GENERIC_WRITE,
                     0, /* exclusive access */
                     NULL, /* no security attrs */
                     OPEN_EXISTING,
                     FILE_FLAG_OVERLAPPED,
                     NULL
                     );

   if (hCom == INVALID_HANDLE_VALUE)
      {
    /* Deal with the error. */
      }

/*
 * Get the current configuration.
 */

   fSuccess = GetCommState(hCom, &dcb);

   if (!fSuccess)
      {
    /* Handle the error. */
      }

/* Fill in the DCB: baud=9600, 8 data bits, no parity, 1 stop bit. */

   dcb.BaudRate = BaudRate;
   dcb.ByteSize = 8;
   dcb.Parity = NOPARITY;
   dcb.StopBits = ONESTOPBIT;
   dcb.EvtChar = END_OF_MESSAGE;
   dcb.fOutX = FALSE;
   dcb.fInX = FALSE;
   fSuccess = SetCommState(hCom, &dcb);

   if (!fSuccess)
      {
    /* Handle the error. */
      }
/* Set the event mask. */

   fSuccess = SetCommMask(hCom, EV_ERR | EV_RXFLAG);

   if (!fSuccess)
      {
    /* deal with error */
      }

   if (!fSuccess)
      {
    /* deal with error */
      }
}

Postat: 1 december 2006, 22:56:44
av Mackan
Tackar för så extremt snabba svar :shock:

Lekte runt lite med hanteringen som "vfr" gav exempel på........och det fungerar klockrent........stort TACK! :tumupp:

Här kommer några skärmdumpar på hur det ser ut just nu.............
Bild

Bild

Bild
Jag lägger upp lite mer bilder på spektaklet när jag närmar mig slutet :)

Tack igen..........
/Markus

Postat: 1 december 2006, 23:51:45
av vfr
Skojigt!!


PS. 1f u c4n r34d th1s u r34lly n33d t0 g37 l41d... ---- Y3s, pr0b4bly! DS

Postat: 1 december 2006, 23:53:23
av chille
Första intrycket när jag kollade vilka komponenter var... WTF!??! Du verkar ha fläskat på med dyra komponenter. Du hade nog kunnat spara ett par hundralappat till. Fast du kanske prioriterar utvecklingstiden nu när du ändå lyckats spara in så många tusenlappar?

I övrigt var det ett bra projekt. Jag blir lika glad varje gång jag ser någon som fått spader på att en produkt är dyr och istället byggt en likvärdig själv. Bättre/sämre, snyggare/fulare... bara den uppfyller sin funktion. Snygga grafer har du fått till också. Ska du inte flumma till det så de visar dom på hemsidan? Helt meningslöst, men coolt 8)

Även kul med lite källkod till serieporten. Jag håller på pilla rätt mycket med den, men har aldrig gjort det i windows. Kanske skulle få tummen ur och porta något program till Windows. Det till bromsbänken vore ju en bra början, för alla har ju inte Unix i garaget. 8)

Postat: 2 december 2006, 11:34:17
av Jeppsson
Trevligt bygge... :)

Saknar dock tid på X-axeln, så man kan få uppfattning på hur ofta värmen är till...

Postat: 2 december 2006, 22:51:30
av Mackan
->vfr
:lol:

->chille
Tidsbrist är faktorn som bestämde komponenterna.........familj med 2 småttingar(samt frugan) sätter sina käppar i hjulet för hur mycket tid som man får tillbringa i labbet :D
Coolt hade det varit om man hade haft tid att lära sig hur man får ut saker i realtid på nätet..........blir nog kanske nån gång i framtiden.

->Jeppsson
Skall se om jag får till tiderna på X-axeln.......borde ju inte vara så svårt

Jag tänkte även addera en tidtagning på exakt hur mycket tid som värmegolvet står på.........så man får det svart på vitt hur många kronor det kostar att ha det skönt under fötterna.

Jag stötte på lite patrull när jag funderade på vad som händer om strömmen går och datorn startar om............hmmmm :humm:
Så klart så sattes båda bitarna för styrningen av shunten.......när jag ryckte ur 230 till datorn och jackade tillbaka den...........detta skulle vid ett eventuellt strömavbrott resulterat i att jag körde shuntmotorn med båda signalerna på...........ville inte testa om shunten klarade av detta så jag konstaterase snabbt att jag måste in med lite logikkretsar mellan pporten och styrsignalerna till pannan.........som håller koll på att signalerna inte är på samtidigt.......innan mitt programm startas.
Logikkretsar........det har man ju alltid liggande........... :( ...........NOT!!!
Suck!

Jaja........jag grottade igenom några sampleslådor och hittade en gammal HC908QY4................denna 8pinnars-kontroller får agera "skydd" istället för logikkretsarna som jag inte hade.
Koden för 908'an blev faktiskt det kortaste som jag gjort på riktigt länge.....vet föresten inte om jag någonsin gjort det.....kolla in detta :shock:

Kod: Markera allt

void main(void) 
{
  byte temp;

  EnableInterrupts; /* enable interrupts */

  PTA = 0x0;
  DDRA = 0x3;
  for(;;) {
  
    temp = PTA & 0xC;
  
    if(temp == 0xC) {
      PTA = 0;
    
    } else{
      PTA = temp >> 2;  
    }
    __RESET_WATCHDOG(); /* feeds the dog */
  }
}
:D

Nä nu blir det ner i labbet igen..........och löda på 230 styrningen till shunten.

Man får passa på nu när barnen sover och frugan inte är hemma :)

/Markus

Postat: 7 december 2006, 11:08:23
av Abstract
Sååå intresant tråd. :)

Väntar på fortsättning och börjar fundera på att göra något liknande med den gammla pannan som man har nere i källaren.. :humm:

Keep up the good work!

Postat: 13 december 2006, 08:55:31
av Mackan
Nu är projektet klart...............och funkar gör det oxå :D

Här kommer några bilder till på hur allt blev..............

Pannan med nya shuntmekaniken ansluten
Bild

Boxen för styrningen av golvvärmen........AV/PÅ med 5V-styrningen från PC'n
Bild

Boxen som styr shunten(230V) som antingen skruvar Varmare/Kallare på framledningen
Bild

Värmegolvsstyrningen........dock utan tid på axeln.........jag lade dock till total tid som golvet är på samt antal KWh så att man får en hum om vad det kostar att köra en vinter tex.
Bild

Framledningstemperatur kontra börvärde i övre grafen samt 2st olika reglerkurvor i nedre grafen som man kan testa beroende på hur systemet beter sig under vintern
Bild

Till sist en förminskad bild på hur hela programmet ser ut........
Bild

Nu är det bara sätta tänderna i nästa projekt och hålla tummarna hårt att pannstyrningen snurrar klockrent resten av vintern :pray:

Blir det någon tid över efter jul så adderar jag ett GSM-modem som jag har liggande hemma............så att man kan får larm om panntemperaturen sjunker för mycket(typ jordfelsbrytaren till pannan löser ut eller nåt).......samt även larm på om panntempen stiger för mycket när man eldar med ved..............

/Markus

Postat: 13 december 2006, 09:11:13
av Zyxel615
Kanon :tumupp:

Postat: 13 december 2006, 09:31:45
av Radiohead
Dett projekt är ju som gjutet för lite PID-reglering! Om du hanterar utetemperaturen på rätt sätt kan du dessutom korrigerar temperaturen i förväg vid väderomslag så att det t ex inte blir snorkallt innne när vinterns första kyla kommer och sådär.

Postat: 13 december 2006, 23:17:23
av GeekJoan
:tumupp:

Postat: 15 december 2006, 08:35:39
av Mackan
Tackar så mycket för positiv respons på bygget...........
Jag vill även passa på att tacka ALLA som gör elektronikforumet till det ställe där man kan få svar på så gott som allt inom elektronik/teknik + lite annat :bravo:

-> Radiohead

Som du skriver så skulle detta projekt vara klockrent att köra lite PID-reglering på........man skulle då oxå kunna hålla koll på panntemperaturen och korrigera så att man inte får "overshoots" då man får snabba ändringar vid vedeldning........synd bara att man inte har tid för detta just nu.

Man få väl vid tillfälle kanske ta och damma av reglerböckerna som man inte har öppnat sedan sista reglertenten :)

Re: Styra CTC-panna och Värmegolv med PC.......hmmm? * KLART

Postat: 17 januari 2011, 09:14:16
av Mackan
Jag väcker upp denna väldigt gamla tråd med en uppdatering :)

Pannprojektet har snurrat på kalas fram till för ca en månad sedan då hårddisken krashade i min gamla 400Mhz-dator. Jag har givetvis inte någon backup på projektet heller.........hahaha.

Så nu handshuntas värmen i huset.

Styrningen till golvvärmen i hallen använder jag inte då en täljstenskammin blivit installerad där.

Det var ju kul i alla fall att det höll i så många år som det gjorde :D

Mvh,
/Markus