Jak připojit tepelné čerpadlo s řízením Rego 6xx k počítači |
How to connect heat pump with Rego 6xx controller to a computer |
LicenceZ důvodu ekonomické krize, jsem musel změnit licenční model. Čtěte proto pozorně odstavec licence.Obsah
Registrováno jako projekt na SourceForge.net |
LicenseI must change the license agreement given the economic crisis. Please read cerrfully license part.Index
Registered as SourceForge.net project |
Obsah dokumentuChtěl bych zde uvést na pravou míru zaměření tohoto dokumentu, protože jej čte velké množství lidí s falešným očekáváním.Tento dokument si klade za cíl seznámit čtenáře s principem a podrobnostmi komunikace řídící jednotky REGO600 používané v tepelných čerpadlech IVT/Bosch/Autotherm/Carrier a možná i dalších. Rozhodně se nejedná o dokument popisující hotový produkt a ani podrobný návod jak produkt vyrobit. Je zde detailně popsán návod na vytvoření dobré hadrwarové části, ale software je popsán pouze principiálně. Je zde uveden příklad software, který lze použít jako modul a nebo k otestování vyrobeného hardware. V každém případě je však nutno do programu zasahovat a minimálně editovat konstanty v úvodní části. Program se spokojí s vypsáním hodnot na obrazovku. Nemá žádné uživatelské rozhraní a ani grafické výstupy. Pokud dokážete myslet na úrovni operačního systému unixového typu, budete schopni si doplnit grafický výstup z jiného programového produktu. Pokud jste schopni programovat v prostředí borland delphi pro windows, mohu vám pomoci a můžeme společně vytvořit uživatelsky příjemný produkt. Pokud jste schopni programovat v jiném visuálním nástroji pro windows, mohu se pokusit jej pochopit a také vám pomoci Pokud hledáte hotový produkt, kontaktujte svého zástupce IVT a ptejte se na produkt IVT@Home Pokud máte problém s tvorbou hardwarové části, přesvědčil jsem kamaráda Pavla Dvořáka, který je schopen zařízení vyrobit a poslat. (cenu, formu dodávky si prosím domluvte individuálně) Odkaz najdete v části FAQ Bonus pro lidi co ovládají češtinu: pokud vás zajímají moje zkušenosti s tepelným čerpadlem (provoz, instalace), pošlete mi e-mail na adresu uvedenou na konci dokumentu a určitě vás neodmítnu. |
Document scopeI would like to describe scope of this document, because so many people trying to find there information which is not primary part of that document.Purpurose of this document is inform readers about principles of communication of unit REGO600 used in heatpumps IVT/Bosch/Autotherm/Carrier and others. Definitly out of scope is description of final product or detail description how to build a product. Here is described in details how to build hardware part, but software part is described only in general. On the page is presented example of software, which can be used as a module or as a test for hardware part. In each cases must be code edited and configured, minimaly constants in first configuration part. Program simply print out measured values to screen and finish. There are no user interface or graphical output. If you are able to think in unix type operating system level, you will be able to connect graphical output from other software If you are able to program in borland delphi for windows, I can help you with it and we can create user friendly product. If you are able to program in different visual tools for windows, I can try to understand it and try to help you too If you are looking for finished product, please contact your IVT dealer and ask for IVT@Home product If making a hardware part is a problem for you, good news is, that I persuade my friend Pavel Dvořák (who is able to produce and send hardware) to help you. (price and sending method is individual part of agreement with you and Pavel) Reference can be found in FAQ part. |
Přídavné kontrolkyTato kapitola nesouvisí zcela s podstatou článku, ale někomu může zjednodušit život.Pokud potřebujete pouze připojit informativní kontrolku která bude například v jiné místnosti signalizovat poruchu, stačí správně použít připravené svorky. |
Additional info lampsThis chapter not exactly fitting topics of this text, but can help to somebody.If you only need additional info lamps for showing for example alarm situation in different room, you can simply use prepared mounting points in heatpump. |
Možnosti připojení přídavných kontrolek | Possibility of connection additional lamps |
|
Obrázky ukazují tři základní možnosti připojení.
|
Pictures showing tree basic types of interconnection of lamps.
|
HardwareNa trhu existuje celá řada celkem kvalitních tepelných čerpadel vycházejících ze stejného základu vytvořeného firmou IVT. Jedná se buď o brandovaná oem čerpadla, nebo licenční stroje. Dají se najít pod značkou IVT, Bosch, Carrier, Autotherm a možná i další. Všechna tato čerpadla používají pro své řízení jednotku Rego 600 nebo novější (Rego 6xx).Tyto řídící jednotky jsou vybaveny komunikačním rozhraním pro připojení počítače nebo jiné řídící jednotky. Jednotky jsou vybaveny sériovým portem označeným jako "Service". Jeho konektor je vždy v blízkosti řídící jednotky. Jedná se o 5V variantu sériového portu, takže délka kabelu nemá přesahovat 50cm. Rozhraní je osazeno 9 pin konektorem can/d-sub. Nožičky konektoru mají následující význam: 2 - RxD 3 - TxD 4 - +5V 5 - GND Komunikace vždy probíhá rychlostí 19200 bps, 8 bit, bez parity, 1 stop bit (19200/8N1). Jedná se o 5V CMOS 4000 (TTL) signály, které je nutné připojovat galvanicky oddělené. Proto pro jejich připojení použijeme optický oddělovač. Například MCT6, ILD2 nebo podobné. Příklad zapojení optického oddělovače je uveden na následujícím obrázku. |
HardwareHere is a few good quality heat pumps on a market, which are based on same conception based by company IVT. That heat pumps are brended or licensed to another companies. It is possible to find them branded as IVT, Bosch, Carrier, AutoTherm and possible others. All that heatpumps using Rego 600 control unit for their driving (or newer Rego 6xx).Those control units contains serial communication interface marked as "Service". Header of this interface are close of control unit. This is 5V serial interface, it mean their cable may be not longer than 50cm. Interface is connecter by 9 pin can/d-sub connector. Pinout of this connector are following: 2 - RxD 3 - TxD 4 - +5V 5 - GND Communication allways using 19200 bps, 8 bit, no parity, 1 stop bit (19200/8N1). This is 5V CMOS 4000 (TTL) signals, which must be connected by galvanic separator. In that case we will use optocoupler for separation. There are available optocouplers for example MCT6, ILD2 or ekvivalent Example of generic connection are shown on following picture. |
![]() ![]() ![]() Obr. 0 Základní zapojení | Fig. 0 Basic schematic |
|
Toto schéma se dá jednoduše rozšířit na připojení pomocí sériového portu RS-232 (sériový port v počítači) Stačí přidat převodník úrovní RS-232 - TTL. Například obvod MAX232. Jako napájení pro napájení je možné použít například napájení na portu USB. (lze použít i napájení pro klávesnici, nebo gameport, eventualně jiné metody) Původní schéma (Obr. 1) vykazovalo značné nedostatky. Bylo v něm několik školáckých chyb, které jsem postupně opravil a vzniklo schéma nové (Obr. 1b). První chyba byla ve směru od PC do Rego, tady LED v optočlenu většinu času svítí. To snižuje její životnost a zvětšuje spotřebu. Proto je tato větev invertovaná. Druhá, mnohem závažnější chyba, byla na větvi od Rego do PC. Na výstupu Rego je použit výkonový budič, který však má otevřený kolektorový výstup, kladná polovina je realizována nějakým pull-up obvodem. Není proto schopna dodávat dostatek proudu pro LED v optočlenu. Proto jsem přidal tranzistor Q1, který zesiluje množství proudu. |
It is easy to enhance this schematics to connect to RS-232 serial interface in computers. Be enough for them RS-232 - TTL level converter. For example MAX232 device. As a source of electric power cam be used for example power pins from USB. (it is also possible to use power for keyboard, gameport or other methods) Original schematic (Fig. 1) have lot of defects. It contain few of beginner mistakes. I fix them in future versions and created new schematic (Fig. 1b), First mistake is in direction from PC to Rego. The LED in optocoupler light majority of time. It decrease lifetime and increase consumption. I decided to make this branch inverted. Second, most significant issue is in branch from Rego to PC. Output from Rego to PC is realized by some bus driver, that realize open drain output. Positive part is realized by some pull-up. That pull-up have not enough current for LED in optocoupler. I added tranzistor Q1, that amplify the current. |
![]() ![]() ![]() Obr. 1 - připojení RS-232 kabelem | Fig. 1 - RS-232 cable connection ![]() ![]() ![]() Obr. 1b - připojení RS-232 kabelem (opravená verze) | Fig. 1b - RS-232 cable connection (fixed version) |
|
Hlavní problém tohoto řešení spočívá v tom, že tepelné čerpadlo většinou stojí v technické místnosti, v lepším případě v prádelně nebo koupelně. Málokdo si předem připravil datovou konektivitu do místností tohoto typu. Málokdo je také připraven nechávat počítač v takovéto místnosti. Proto jsem se rozhodl využít pro připojení ty dráty, které k tepelnému čerpadlu rozhodně vedou. Tepelné čerpadlo se běžně připojuje třífázovou přípojkou. Proto můžeme pohodlně použít zařízení pro komunikaci po silovém vedení. Navíc si vždy můžeme vybrat správnou fázi pro efektivní komunikaci. Na internetu je překvapivě velké množství zařízení komunikujících malou rychlostí (protokoly X1 a pod), na druhou stranu aliance HomePlug vytvořila levná zařízení pro přanos až 200mbps. Bohužel pouze s rozhraním ethernet. Jako vhodný kompromis se ukázaly modemy pro komunikaci po silovém vedení typu PLC-485A prodávané pod značkou LinkSprite. Modem je možné koupit jako modul nebo jako hotová zařízení. Pro instalaci do tepelného čerpadla jsem si zvolil modul bez dceřiné desky, ke kterému jsem vyyvpřil vlastní rozhraní. Na následujícím obrázku je uvedeno schéma dceřiné desky pro připojení tepelného čerpadla. |
Main problem of this solution is, that it usualy located in technical room, in better cases in laundry, washrom or bathroom. Not many users prepared data line to this type of room. Not many users also want to leave computers in that type of room. In that case I decided to use for connection most comon wires presented here. It is three phase power line wires. In that case we can easily use devices for power line communication. In addition we can chose correct phase for most efective communication. On the Internet is presented surprising number of devices using small communication speed (for example X1 protocols etc.), from the other hand there is HomePlug aliance makes cheap devices for transfer up to 200mbps. However only with ethernet interface. As a good compromise look like to be power line communications modems PLC-485 type marked as LinkSprite. It is possible to buy modem as module or as a final devices. For an installation into heat pump I used module without doughter board. I make myself doughter board with my own interface. On following picture is presented schematic of that doughter board for connecting the heat pump. |
![]() ![]() ![]() Obr. 2 Připojení po elektrické síti | Fig. 2 Power line connection |
|
Úprava nové verze PCL modemu LinkSprite vydalo novou verzi PLC modemu, která má poněkud nešťastně vyřešenou citlivost vstupních svorek. Proto jsem musel přidat obvod pro posílení a upravení hran. Vyzkoušel jsem dvě varianty připojení. Jednodušší varianta (A) pouze zesiluje signál, rozšířená varianta (B) navíc přidává led diodky pro umístění na panel. Pokud máte problém s připojením k počítači (pozná se tak, že zařízení nesprávně reaguje na "+++"), doporučuji také přidat zesilovač na stranu počítače. |
Enhancement for new version of PLC modem LinkSprite released new version of PLC modem. This version of modem have little distressful sensitivity for input pins. In that case I must add circuit for ampfiling and forming of signal. I have tested two versions of circuit. First - easier variant (A) only ampfiling the signal, second variant (B) also adding led diodes for placing on front panel If you will found problems also with interconnection to computer (found, that modem not responding to "+++" sequence), I recomend to add ampfiler to computer side too. |
![]() ![]() ![]() Obr. 3-A Připojení po elektrické síti / jednoduché | Fig. 3-A Power line connection / simple ![]() ![]() ![]() Obr. 3-B Připojení po elektrické síti / zábavné | Fig. 3-B Power line connection / funny ![]() ![]() ![]() Obr. 3-C Připojení po elektrické síti / minimalistické | Fig. 3-C Power line connection / minimalistic Pro informaci - verzi 3-C aktuálně používám | For your info: I'm currentely using version 3-C |
|
Pro praktickou realizaci jsem použil voděodolnou, požár nešířící krabičku, do které se pohodlně vejde celé zařízení. Dceřinou desku jsem, vzhledem k její jednoduchosti, osadil na univerzální plošný spoj. Celou krabičku je nutné umístit do blízkosti řídící jednotky. To je důležité brát v úvahu při mechanické konstrukci. Také je důležité vzít v úvahu chlazení. Uvnitř tepelného čerpadla je celkem dost teplo a špatná cirkulace vzduchu. Následující fotografie ukazují praktickou realizaci. |
For practiacal realisation i have used water proof, fire proof box, which easy fitting all device. Becouse doughter board is simple, I have done it on universal circuit board. All device must be placed close of controll unit. It is necessary to care about it during mechanical construction, because in this part of heatpump is not enoughtplace. It is necessary to thing about cooling. Inside heatpump is higher temperature and wrong air circulation. Following photos showing my working example. |
|
|
Poznámky:
|
Notes:
|
SoftwareKomunikace probíhá vždy prostřednictvím paketů stejné délky a stejné struktury. Následující obrázek ukazuje příklad takové komunikace. |
SoftwareCommunication running allways by using packet same size and same structure. Following picture displaying example of that communication. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Obr. 4 Struktura komunikačních paketů | Fig. 4 Structures of communication packets |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Všechna čísla jsou zobrazována v šestnáctkovém tvaru (hex). Paket požadavku má vždy 9 znaků (čísel). Odpověď existuje standardní 5 znaků, nebo prodloužená 42 znaků. Reprezentace číselRego6xx používá 7 a méně bitů pro komunikaci, většina čísel je reprezentovaná jako 16ti bitová. Při komunikaci se nejprve posílá vyšší řád.V případě teploty se posílá desetinásobek jako celé číslo ve formátu dvojkového doplňku. Například: Register 020B je šestnáctibitové číslo. Rozepíšeme si jej do dvojkového 0000 0010|0000 1011 Od konce si označíme skupiny po 7 bitech 00|0000100|0001011 A dostaneme číslo v 7 bit reprezentaci 00 04 0B Obdržíme teplotu 00 04 38 Rozepíšene si 7 bitová čísla za sebe: 0000000|0000010|0111000 Vyznačíme si řády 8 mitové reprezentace 00000001|00111000 A dostaneme číslo: 138(hex) 312(desítkově) Teplota je tedy desetina 31,2C Obdržíme teplotu 03 7C 1D Rozepíšene si 7 bitová čísla za sebe: 0000011|1111100|0011101 Vyznačíme si řády 8 mitové reprezentace 11111110|00011101 A dostaneme číslo: FE1D(hex) 65053(desítkově)-483(dvojkový doplněk) Teplota je tedy desetina -48,3C Adresa(Address)Pravděpodobně umožňuje adresovat více zařízení, já jsem narazil pouze na adresování 81 tepelné čerpadlo a 01 počítač.Příkaz(Command)Pravděpodobně existuje tabulka příkazů, kterou se pokusím vytvořit. Zatím mám velice málo informací. |
All numbers are displayed in hex format. Request packet allways consist of 9 characters (numbers). Response exist in standard form (5 characters) or long form (42 characters). Representation of numbersRego6xx using 7 and less bits for communication. Most numbers are represented as a 16bit numbers. For communication higher part of numbers are send first.For representing temperature is used ten multiple as a sign integer. For example: Register 020B is sixteen bit number. Let's write it in binary form 0000 0010|0000 1011 Now we can mark 7 groups from the end 00|0000100|0001011 And now we have this number in 7 bit form 00 04 0B We have received temperature 00 04 38 Let's write 7 bit numbers in binary form 0000000|0000010|0111000 We will mark 8 bit delimiters 00000001|00111000 It is: 138(hex) 312(dec) In that case temperature is 31.2C We have received temperature 03 7C 1D Let's write 7 bit numbers in binary form 0000011|1111100|0011101 We will mark 8 bit delimiters 11111110|00011101 It is: FE1D(hex) 65053(dec)-483(signed integer) Received temperature is -48.3C AddressIt is possible, that it alows to have more devices on line. I have found only addresing 81 for heatpump and 01 for computer.CommandThere must exist table of commands. I will try to create some. Currentely I have not enough information. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Adresa registru(Register address)Pravděpodobně existuje tabulka registrů, kterou se pokusím vytvořit. Zatím mám velice málo informací. Tabulka se mírně liší pro různé typy čerpadel a pro různé verze jednotek Rago6xx. |
Register addressThere must exist table of registers. I will try to create some. Currentely I have not enough information. Table contains a small differences for different versions of heat pump and for different versions of Rego6xx controllers |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DataHodnota pro zapsání do registru pro zápisové přkazy. V případě čtecích příkazů se odesílá 0000.Hodnota přečtená z registru v odpovědi. Kontrolní součet(Checksum)Tato hodnota představuje exclusive-or (xor) ze znaků adresy registru a dat u pořadavku a z dat u odpovědi.Dlouhá dataExistuje zvláštní paket odpovědi, který se posílá v případě čtení displaye.Jeho délka je 42 znaků.Tento paket se odesílá jako odpověď na pakety: 81|20|00|00|00|00|00|00|00 - 81|20|00|00|03|00|00|00|03. Tento paket obsahuje na prvním místě adresu cíle a následuje 20 dvojic znaků, které vyjadřují znaky na display. Dá se předpokládat, že čerpadlo používá běžný řádkový display a proto jeho znaková sada bude odpovídat následujícímu obrázku. Znaky jsou kódovány jako čtyřbitové a to tak, že nejprve přijde sloupec a pak řádek. Pro běžné znaky je kódování stejné jako znaková sada počítače, takže je možné dvojice sloučit a zobrazovat přímo. Příklad: Dostaneme paket: 01|05|02|06|05|06|07|06|0F|03|06... První znak je adresa cíle: 01=počítač Následující znaky můžeme sloučit do dvojic: 52|65|67|6F|36... A vypsat si je přímo jako znaky podle ascii tabulky: Rego6... (Poslední znak, který není zveřejněn je kontrolní součet, xor stejně jako v ostatních případech.) |
DataValue for writting into register for writting commands. In a case of read commands it is 0000.Value readed from register for responses. ChecksumThis value representing exclusive-or (xor) of all characters of address and data in a request, or data in a response.Long dataExist special packet for response, which sending in a case of reading display. This packet is 42 character long.This packet sends especialy for requests: 81|20|00|00|00|00|00|00|00 - 81|20|00|00|03|00|00|00|03. First character contains destination addres, followed by 20 doubles of characters, presenting characters on display. It can be presumed, that pump using standard character LCD display. In that case character set of that display will be same as following image. Characters are coded as four bit pairs. First character informing about column, second about row of character. For standard characters is encoding same as computer character table, in that case is possible to concat doubles and present it directly. Example: We will receive packet: 01|05|02|06|05|06|07|06|0F|03|06... First character representing destination: 01=computer Following characters can be concated by pairs: 52|65|67|6F|36... And display by standard ascii table: Rego6... (Last character is checksum, not shown in example, is checksum. Same xor as other packets.) |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Obr. 5 Znaková sada displaye | Fig. 5 LCD character set |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
KlávesyKlávesy mají registry. Stisk klávesy se provede zapsáním "1" do jejich registruNepříklad 81|01|00|00|09|00|00|01|08 znamená stisk levé klávesy (v klidovém stavu Info) Odpověď na klávesy je jednoznaková - vždy 01 Vyjímkutvoří kolečko. Otočení doprava znamená zápis "1", otočení doleva "1FFFFF" Nepříklad 81|01|00|00|44|00|00|01|45 ->> Nepříklad 81|01|00|00|44|7F|7F|7F|3B <<- Seznam poruchPro ovládání seznamu poruch jsou jsou k dispozici dva příkazy: 40 a 42. Pokud zadáme příkaz 40 (81|40|00|00|00|00|00|00|00) dostaneme poslední chybu zapsanou v registru chyb.Příkazem 42 (81|42|00|00|00|00|00|00|00) dostaneme chybu, která je v pořadí před tou, kterou jsme vypsali minule. To se vztahuje k opakovanému volání příkazu. Odpověď na tyto dotazy je formou dlouhého paketu (42 znaků), který se dekóduje stejně jako řádky displaye. Jenom některé znaky mají jiný význam: První znak má číselnou hodnotu, následuje 15 znaků datumu a času, a pak další 4 číselné znaky. První číslo znamená typ chyby (viz tabulka), třetí číslo je 0 pro korektní chybu. Pokud přečteme včechny chyby, dostaneme číslo chyby 255 a třetí číslo 150. Například: Log 40 =|22|090319 18:21:05|0|48|2|32| Log 42 =|10|090314 18:53:11|0|48|2|32| Log 42 =|22|090312 21:46:33|0|48|2|32| ... Reg 42 =|255|0˙Ě:56:16|150|48|2|32| |
KeyboardEach key have own register. Press of key mean write "1" into registerFor example 81|01|00|00|09|00|00|01|08 mean press of left key (in silence state Info) Response to key press are allways single charecter - allways 01 Difference is wheel. Turn to right mean write "1", turn to left mean "1FFFFF" For example 81|01|00|00|44|00|00|01|45 ->> For example 81|01|00|00|44|7F|7F|7F|3B <<- Error logFor managing error log is there two commands: 40 and 42. When we send command 40 (81|40|00|00|00|00|00|00|00) we will receive last known error stored in the registry.By sending command 42 (81|42|00|00|00|00|00|00|00) we will receive previous error. (repeeting this request we will receive prev-prev error. Response for this commands is long packet (42 chars), which may be decoded same way as display packet. Only some characters have special functions First character representing numeric value, next 15 characters representing date and time of error. And next is 4x numerich characters. First number reprezenting error number (see table), third number is 0 for correct record. When we read all records, we will receive line with error no 255 and third number 150. For example: Log 40 =|22|090319 18:21:05|0|48|2|32| Log 42 =|10|090314 18:53:11|0|48|2|32| Log 42 =|22|090312 21:46:33|0|48|2|32| ... Reg 42 =|255|0˙Ě:56:16|150|48|2|32| |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Čemu nerozumímJaké je mapování kolečka na 636???Existuje detailnější popis registrů? Popis registrů zařízení? Řídící jednotka komunikuje i ve vypnutém stavu. (Když bliká power led) Dá se na dálku zapnout? Kde jsou uloženy bezpečnostních hodnoty (maximální teplota, maximální delta KPT,...) Kde (a jak) jsou uloženy hodnoty časovačů (pro režim dovolená? pro časové řízení?) |
Open questionsWhat is wheel mapping on 636???Exist detailed list of registers? Keys have single character response? Control unit responding also in standby state. (when power led blinking) Is it possible to switch pump on? Where are stored security limits (maximum temp, maximum HTF c-pump switch [Motorskydd KB.pump])? Where (and what) is stored information about timers (for holiday mode, for clock setting) |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PříkladPraktická funkčnost se dá vyzkoušet například na grafech teplot z mého tepelného čerpadla. Jedná se o čerpadlo IVT Greenline C6+ s řízením Rego636.DownloadVšechny své programové pokusy tvořím v jednom souboru. Tento soubor je zatím bohužel jen snůškou poznámek a funkcí.Aktuální verzi je možné si stáhnout ZDE (jedná se o pracovní verzi a jestliže jí právě edituji, pak v ní mohou být i chyby. Pokud narazíte na chybu, stáhněte si jej znovu za párminut.) PoznámkaTento dokument vzniká jako moje poznámky. Velice rád si přečtu jakýkoli komentář. Pokud máte nějaké informace, nebo dotazy, pošlete mi email. |
ExamplePractical example can be tested on temperature graphs from my heatpump. It is heat pump IVT Greenline C6+ with Rego636.DownloadAll my programming tests I'm doing in one file. This file is still set of notes and functionsIt can be downloaded HERE (It is working snapshot and is possible that I§m editing it and is there some bugs. If found, download again in few minutes.) NoteThis document is created as my notes. I would like to read any comments. If you have any knowledge, questions, remarks, send me email. |
Program pro WindowsProtože větší množství lidí nechce chápat tuto stránku jako dokumentaci, přistoupil jsem na vytvoření ukázkového programu pro Windows. Tento program je příkladem toho, jak lze dokumentaci použít a neslouží jako finální produkt.Program je vytvořen v Borland Delphi 5, ale myslím, že v jakémkoli jiném visuálním nástroji bude vypadat podobně. |
Software for WindowsBecouse many of people do not want to understand this page as a documentation and framework; I have created example program for windows. This program is example of using this documentation and not an final product.Program is developed in Borland Delphi 5; I belive, that it will be similar in any other visual tool. |
rego600.zip 392.3KB |
Použití modulu ESP-01Dnes jsou moduly s WiFi připojením velmi populární, ESP-01 je opravdu levný, proto jsem se rozhodl jej použít.HardwareZ hlediska hardware máme před sebou jednu výzvu. Tepelné čerpadlo je velká plechová bedna a tím pádem uvnitř není moc dobré prostředí pro šíření WiFi signálu. Proto potřebujeme dostat vlastní modul mimo čerpadlo. Zároveň prostředí uvnitř čerpadla není zrovna přátelské z pohledu elektromagnetického rušení. Rozhodl jsem se pro vytažení použít linku RS-232. Je to poměrně staré rozhraní, ale stále dobré. Ve verzi RJ45 se dá velmi dobře přenášet FTP síťovým kabelem, takže máme i stínění i snadno dostupný kabel. Vytvořil jsem si tedy rozhraní na stranu tepelného čerpadla a druhé rozhraní na stranu s ESP-01.Rozhraní na straně tepelného čerpadla je celkem jasné. Rozhraní jsem použil pro experimentování s optočleny. Jako první jsem použil optočleny s vysokým CTR, ale nějak jsem si si nevšiml, že jsou velmi pomalé. Takže jsem musel použít jiné. Na druhý pokus už jsem se nechtěl starat o přenosovou rychlost a kvalitu signálu, proto jsem použil optočleny s integrovaným hradlem 6N137. Na fotkách je vidět, jak jsem desku předělával. V přiložených souborech už je deska správně. Rozhraní v této podobě je velmi univerzální a lze jej použít i pro jiné aplikace. Na straně ESP-01 jsem musel znovu použít převodník z RS232 na sériová data. Tedy zase MAX232. Protože ESP-01 pracuje s napěťovými úrovněmi 3,3 Volt, použil jsem ještě odporový dělič z 5V na 3V3 na výstupu tohoto převodníku. S tím také souvisí napájení pro ESP-01. Použil jsem LDO stabilizátor LF33. Pro programování ESP-01 je důležité používat vstupy Reset a Boot, proto jsem je vyvedl na pinovou lištu. Také jsem si vyvedl výstup sériové linky U1, která je užitečná pro pracovní (debug) výpisy. Linka U0 je na stejné pinové liště, ale její piny jsou propojené pomocí jumper propojek na MAX232. Tyto propojky je možné vyndat, pokud je to užitečné pro programování. Při tvorbě desky se mi nějak stalo, že konektor pro ESP-01 je na spodní straně. Jelikož to ničemu nevadí, neřešil jsem to. Dávejte si na to pozor při osazování. Když už jsem vytvářel desku, udělal jsem na ní i konektory pro připojení sériového portu z počítače. Jedná se jen o jednoduché redukce. Zařízení potřebuje napájení. Jako nejvhodnější se mi zdá USB nabíječka. Na deskách jsou jen dvě plošky pro připájení ustřiženého USB kabelu. Následující obrázek ukazuje schémata a vizualizaci desky plošných spojů. Deska je vyrobená jako jeden kus a nastříhaná doma. Vyrábět jsem jí nechal u Elecrow (nejméně jim vadí takto sloučené desky). Gerber file je k dispozici ke stažení. |
Use of ESP-01 moduleWiFi modules are very popular nowadays. ESP-01 is one of cheapest of them. I decided to use it for communication.HardwareFrom hardware point of view, we have one challenge upfront. Heat pump is big sheet metal box; and then inside is not good environment for WiFi connectivity. We need to move the module itself outside heat pump. On the top, environment inside heat pump is not very friendly from electromagnetic noise point of view. I decided to use RS-232 line for line extension. It is old interface, but good enough. In RJ45 version it is possible to transfer it using FTP network cable; we have shielded easy to get cable then. I created interface for Rego side, and then second tor ESP-01 side.Heatpump side interface is straight forward. I was used this interface for my experiments with optocouplers. As a first experiment, I was used optocouplers with big CTR, but I forget somehow, they are very slow. I have to use different then. I did not want to care about transfer speed and signal quality. Thei I used optocouplers with integrated gate 6N137. It is visible on photos, how I reworked the board. In attached files is final version and fixed board already. Interface in this form is very universal and can be used for for another applications as well. Interface on ESP-01 use same RS-232 converter again. It mean again MAX232. Because ESP-01 works with 3.3 voltage levels, I used two resistors voltage divider from 5V to 3V3 on converter output. It implicate powering of ESP-01. I added LDO regulator LF33 for powering. For ESP-01 programming is crucial to use inputs Reset and Boot. I decided to connect them on pinheader to be accessible. I did the same for output of serial port U1, useful for working (debug) prints. Serial line U0 is presented on pinheader as well, but their pins are connected using jumper switches to MAX232. It is possible to remove those jumpers and use port directly, once it is useful for example for programming. During board preparation it happens somehow by mistake, that ESP-01 slot is on bottom side of board. But it have no conflict with anything else, I did not change it. Keep it on mind during soldering components to board. When I created board, I created added headers for connection to serial port of PC. They are just simple adapters. Device needs to be powered. As a best I see spare USB charger. Here is two pads on boards for soldering cut out USB cable. Following picture show schematic and board visualization. Board is produced as one piece and cut out at home. It was manufactured with Elecrow (they have less problems with boards combined like this). Gerber file is available for download. |
![]() ![]() Obr. 6 Schémata rozhraní pro připojení modulu ESP-01 | Fig. 6 Schematics of interfaces for use with module ESP-01 ![]() ![]() ![]() Gerber Obr. 7 Deska plošných spojů pro ESP-01 | Fig. 7 Printed circuit board for ESP-01 |
|
SoftwareSoftware je velmi jednoduchý. Je to vlastně jen takový příklad. Vychází z běžného příkladu pro HTTP GET, do kterého jsou doplněny funkce pro stažení dat z Rego. Tento příklad stahuje základní hodnoty a odesílá je pomocí http na server. Server je pak zobrazuje pomocí RRD grafů.Program je napsaný v prostředí Arduino. Je potřeba si najít nějaký návod, jak do prostředí Arduino přidat podporu pro procesor ESP8266 respektive ESP-01. Program do modulu ESP-01 je možné nahrát několika způsoby. Já jsem použil nahrání přímo v rozhraní, s použitím konektoru do PC, který je součástí desky. To je metoda spíše pro pokročilé uživatele, pro začátečníky existují různé programovací adaptéry. |
softwareSoftware is relatively simple. It is just example in reality. It is based on example for HTTP GET, with added functions for download of Rego data. This example downloads basic values and submit them to server using http protocol. Server display them by using RRD graphs.Program is written using Arduino environment. It is necessary to find some manual, how to install support for ESP8266 respective ESP-01 to Arduino. It is possible to upload program to ESP-01 module various ways. I'm using upload directly inside interface with use of PC connector. That is part of PCB. This method is more advanced one. For beginners is exist various USB programming adapters. |
![]() IVT_to_ESP01.ino ![]() ![]() ![]() ![]() Obr. 8 Fotografie desek v pracovním stavu s opravou některých chyb | Fig. 8 Photos of boards in working state with some bugfixes |