Electrokit Buggfix Plus
Aktuellt datum och tid: 08.02 2019-11-21

Alla tidsangivelser är UTC + 1 timme




Svara på tråd  [ 17 inlägg ]  Gå till sida 1, 2  Nästa
Författare Meddelande
InläggPostat: 15.41 2019-02-10 
Användarvisningsbild

Blev medlem: 17.51 2007-12-13
Inlägg: 675
Ort: Stockholm
Köpte hus i slutet av November förra året.
Huset upplevdes kallt och jag lånade en FLIR-kamera för att se var värmen smiter ut.
Såg samtidigt att de vattenburna radiatorerna såg konstiga ut genom FLIR-kameran.
Hade i samma veva några vänner över på middag och blev ganska snart varse att VB-fram och VB-retur verkade omkastade.
Det visar sig att de varit omkastade sedan installationen av bergvärmepumpen för knappt 10 år sedan.

Jag hade en rörmokare över som fixade problemet. Det blev en helt annan värme i radiatorerna. En jämn fördelning av värmen och inte bara i ena kanten av radiatorn som det varit tidigare.

Detta gjorde att jag började söka på om jag kunde läsa av bergvärmepumpens parametrar för att se vad som händer när jag skruvar på cirkulationspumpen, kurvlutning, kurvförskjutning mm. Jag har en Nibe Fighter 1235 8kW.

Självklart finns det ju redan en tråd om detta här på elektronikforumet :)
https://elektronikforumet.com/forum/viewtopic.php?t=13714
Där finns en post av @FredRovers som beskriver hur man kan läsa av parametrarna genom satt låtsas att man är en RCU (Nibes egna kommunikatonsmodul som är ett extra tillbehör).
https://elektronikforumet.com/forum/viewtopic.php?p=267410#p267410

För att få en smidig, kompakt och enkel lösning implementerade jag kod i Arduino IDE som körs på en ESP8266-variant som heter Wemos D1 mini. Det skulle även fungera med den minsta varianten, ESP-01, men jag tog den som låg på armlängds avstånd vid skrivbordet :). F1235 använder RS485-bus för att kommunicera internt, och jag behövde därför även en RS485-RS232-brygga eftersom ESP8266 bara pratar RS232 (https://www.ebay.com/itm/3-3V-UART-serial-to-RS485-SP3485-Transceiver-Converter-Communication-SP3485-NEW/173317363375).
Då RJ45-porten på F1235 även förser med +5V så behövs bara en nätverkskabel som i andra änden har bryggan samt Wemos D1 mini.

Koden som den ser ut idag är en minst sagt work under construction och koden behöver städas rejält... men den fungerar.
Det D1:an gör idag är att lyssna efter (hex) 00 14 från CPUn och sedan svara 06 (ACK). Då skickar CPUn några parametrar. Dessa sparar jag undan i en array. Parametrarna uppdateras många gånger under en minut så man får mer data än man behöver. Det är 97 parametrar totalt, varav flertalet inte är speciellt intressanta eller ens används.
Ungefär var 25:e sekund skickar jag iväg ett UDP-paket med hela arrayen med de senaste värdena.
Detta UDP-paket tar jag emot på en liten server (Seagate FreeAgent DockStar Network Adapter STDSA10G-RK) som jag hackat och kör debian på.
Den tar datat i UDP-paketet och formaterar datat och laddar upp det till thingspeak (https://thingspeak.com/channels/699393). Jag skulle ju helst vilja ha lite finare grafer än vad thingspeak erbjuder, men jag vet inte riktigt vad jag ska välja i djungeln av lösningar.
Sneglar på MQTT och Chart.js, men är osäker på om det är rätt väg att gå. Tips?

En förbättring som skulle förenkla kommunikationen är att jag redan från Wemos D1 skickar direkt till Thingspeak.

En annan sak jag skulle vilja få till är också att kunna skriva värden till bergvärmepumpen, men här har jag än så länge gått bet. Den beskrivning som FredRover beskriver fungerar inte. Jag skickar en 05 (ENQ) efter jag blivit adresserad. Får en ACK enligt hans beskrivning. Sedan skickar jag nya Data, men sedan får jag inte ACK tillbaka :(.

Kod: [Expandera/Minimera] [Hämta] (Untitled.txt)
CPU                 RCU(typ)
  |                        |
  |—— 00 14 --—>|
  |                        |
  | <——  ENQ --—|
  |                        |
  |—— ACK --——>|
  |                        |
  | <— DATA —--—|
  |                        |
  |——  00  —--—>|   <--- Här går det fel!
  |                        |


DATA-paketet innehåller c0 00 14 03 00 0b 09 d5
c0 är kommando.
00 14 är adress.
03 är payload-längd.
00 0b är adressen till parametern som ska skrivas. Kurvlutning i det här fallet.
09 är nya parametervärdet.
d5 är checksumma (xor av föregående byte c0 till 09).

Någon som har tips på hur man kan få till skrivning?
Bilaga:
20190112T232722.jpg

Bilaga:
20190113T001403.jpg

Bilaga:
20190209T232154.JPG

Bilaga:
IMG_4912.JPG

Bilaga:
IMG_4911.JPG


Edit1: La till en rad i förklaringen av datapaketet efter att @mAVRick påpekat missen.


Logga in för att visa de filer som bifogats till detta inlägg.


Senast redigerad av ecenier 15.57 2019-02-10, redigerad totalt 1 gång.

Upp
 Profil  
 
InläggPostat: 15.52 2019-02-10 

Blev medlem: 12.43 2013-03-19
Inlägg: 280
Ort: Östersund
Spontant, saknar du inte ett värde på din parameter?
Payload 03, adress 2 byte och sedan checksumma direkt, känns som det skulle in en byte till där...
Med brasklappen att jag kan inget om Nibe eller deras protokoll...


Upp
 Profil  
 
InläggPostat: 15.58 2019-02-10 
Användarvisningsbild

Blev medlem: 17.51 2007-12-13
Inlägg: 675
Ort: Stockholm
Tack! Hade med värdet i presentationen av hela paketet, men inte i förklaringen. Nu har jag uppdaterat inlägget.


Upp
 Profil  
 
InläggPostat: 18.27 2019-02-10 

Blev medlem: 19.03 2015-11-28
Inlägg: 237
Har tyvärr inget att inlägga i själva problemet, ville bara säga att det är snygg jobbat! Älskar sådana här projekt folk håller på med hemma!


Upp
 Profil  
 
InläggPostat: 15.57 2019-02-21 

Blev medlem: 16.55 2017-05-17
Inlägg: 129
Ort: Oslo, Norge
Enig! Pent jobbet!


Upp
 Profil  
 
InläggPostat: 09.30 2019-04-13 
Användarvisningsbild

Blev medlem: 17.51 2007-12-13
Inlägg: 675
Ort: Stockholm
Nu har jag gått från prototyp till en lite mer robust och permanent lösning.
Lösningen integrerar dessutom en rumsgivare så att man får lite jämnare temperatur och sparar lite energi.

Bilaga:
IMG_0365.jpg

Bilaga:
IMG_0363.jpg

Bilaga:
IMG_0366.jpg


Än så länge har jag bara verifierat rumsgivaren men inte monterat den i huset.


Logga in för att visa de filer som bifogats till detta inlägg.


Upp
 Profil  
 
InläggPostat: 22.57 2019-10-21 
Användarvisningsbild

Blev medlem: 17.51 2007-12-13
Inlägg: 675
Ort: Stockholm
Nu fungerar även skrivning. Har lyckats ändra kurvlutning.


.


Upp
 Profil  
 
InläggPostat: 04.31 2019-10-22 

Blev medlem: 21.19 2009-05-06
Inlägg: 7287
Används kurvlutning, kurvförskjutning och utomhusgivare ifall du har inomhusgivare ansluten?

Har försökt förstå beskrivningen till en äldre Nibe och fått intrycket att inomhusgivare "tar över" regleringen. Jag kan ha förstått fel.

Men grattis att du fått överföringen att funka åt båda hållen! :tumupp:


Upp
 Profil  
 
InläggPostat: 06.16 2019-10-22 
Användarvisningsbild

Blev medlem: 17.51 2007-12-13
Inlägg: 675
Ort: Stockholm
Tack MiaM!

Inomhusgivaren viktas mot utegivaren. Jag har än så länge inte testat att variera den utan den är på defaultvärdet.
På 1235 tar det alltså inte över, utan kompletterar utegivaren.


Upp
 Profil  
 
InläggPostat: 09.54 2019-10-24 

Blev medlem: 13.00 2009-01-16
Inlägg: 612
Ort: Eslöv
ecenier skrev:
Nu fungerar även skrivning. Har lyckats ändra kurvlutning.

Måste säga att jag är lite förvånad att det funkar...

Kollade hur du gjort i koden, och om det där funkar så borde det egentligen räcka att ändra serieparametrarna till 8N2, och sedan skicka strängen i ett svep istället - har du testat detta?

Jag har själv ändrat till 8N2 i mitt projekt (eftersom det är mer "rätt", men egentligen borde det vara 9N1), och läsning funkar utmärkt.
Har dock inte försökt mig på skrivning än.

/J


Upp
 Profil  
 
InläggPostat: 11.15 2019-10-24 
Användarvisningsbild

Blev medlem: 17.51 2007-12-13
Inlägg: 675
Ort: Stockholm
Ja, det kan nog vara lite konstigt, men fungerar gör det till 100% än så länge.

Min teori varför det fungerar är att genom att skicka enstaka bytes så kommer seriella klockan på mottagarsidan i synk vid start av varje byte. Stoppbiten saknas och då kanske mottagaren timear ut. Kan ju också vara buggig kod på mottagarsidan som gör att det är ren tur att det fungerar.

Ska testa att skicka som en sträng med 8N2.

Har även lött på två 680Ohms bias-resistorer också för att få väldefinierade state som du tipsade om. Jag borde ha läst databladet mer noggrant.

Minns inte vad du körde med för hårdvara @jah, men om du använder ESP-01 så kan jag skicka ett mönsterkort till dig om du är intresserad.
På mönsterkortet finns även en egen RG10 för att även kunna styra på inomhustemperaturen. PM:a i så fall.


Upp
 Profil  
 
InläggPostat: 12.06 2019-10-24 

Blev medlem: 13.00 2009-01-16
Inlägg: 612
Ort: Eslöv
Tack för erbjudandet, men har dels redan en hemmabyggd RG10, och sedan har jag även ingång för pulser från elmätaren på mitt kort, så bättre erbjuda någon annan det isf.

Annars är ju ditt förstås mycket snyggare...

/J


Upp
 Profil  
 
InläggPostat: 12.11 2019-10-24 
Användarvisningsbild

Blev medlem: 17.51 2007-12-13
Inlägg: 675
Ort: Stockholm
Jag har alltså 10 mönsterkort över så det är inga problem.
Är det någon annan som är intresserad så PM:a.

Edit: Jag har även fusion360-cad på passande låda om man vill skriva ut på 3d-skrivare.


Upp
 Profil  
 
InläggPostat: 15.59 2019-10-24 
Användarvisningsbild

Blev medlem: 17.51 2007-12-13
Inlägg: 675
Ort: Stockholm
Nu har jag testat med 8N2 att sända kommandot som sträng, och det fungerar inte. Däremot fungerar det även med 8N2 att skicka varje tecken för sig.
Behåller inställningen 8N2 eftersom det är rätt antal bitar som du säger.


Upp
 Profil  
 
InläggPostat: 21.14 2019-10-24 
Användarvisningsbild

Blev medlem: 14.17 2006-10-03
Inlägg: 395
Ort: Ursvik
Kan detta kort Funka med en F1245? då är jag intresserad av ett mönsterkort.


Upp
 Profil  
 
Visa inlägg nyare än:  Sortera efter  
Svara på tråd  [ 17 inlägg ]  Gå till sida 1, 2  Nästa

Alla tidsangivelser är UTC + 1 timme


Vilka är online

Användare som besöker denna kategori: maverick4door, Regius och 7 gäster


Du kan inte skapa nya trådar i denna kategori
Du kan inte svara på trådar i denna kategori
Du kan inte redigera dina inlägg i denna kategori
Du kan inte ta bort dina inlägg i denna kategori
Du kan inte bifoga filer i denna kategori

Sök efter:
Hoppa till:  
   
Drivs av phpBB® Forum Software © phpBB Group
Swedish translation by Peetra & phpBB Sweden © 2006-2010