Buggfix Plus
Aktuellt datum och tid: 05.53 2019-10-22

Alla tidsangivelser är UTC + 1 timme




Svara på tråd  [ 8 inlägg ] 
Författare Meddelande
InläggPostat: 15.41 2019-02-10 
Användarvisningsbild

Blev medlem: 17.51 2007-12-13
Inlägg: 657
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: 279
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: 657
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: 235
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: 120
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: 657
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: 657
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: 7277
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  
 
Visa inlägg nyare än:  Sortera efter  
Svara på tråd  [ 8 inlägg ] 

Alla tidsangivelser är UTC + 1 timme


Vilka är online

Användare som besöker denna kategori: Inga registrerade användare och 1 gäst


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