Създавам тази тема за да обменим идеи и обединим усилия в създаването на безплатен софтуер с отворен код, който да бъде използван за контол и мониторинг на пелетни горелки с контролер NPBC.
Веднага искам да уточня, че става дума за reverse engineering на протокола за комуникация през серийния порт на контролера. За целта просто ще се прави запис на вървящата комуникация и след това анализ на база показанията на горелката и приложението. Дезасемблирането на софтуера, както на горелката, така и на NPBC_Monitor.exe, биха могли да бъдат разглеждани като нарушение авторските права на производителя, затова искам да подчертая, че няма да се занимаваме с това.
------
Използвам следната постановка:
1. Горелка Greyko RB30 + RS232 към USB адаптор
2. Виртуална машина с Windows 7
3. Trial версия на Device Monitoring Studio
Предимствата на виртуалната машина са, че лесно се пренася на друг компютър, а и изтичнето на trial периода не е болка за умиране ако сме си направили един snapshot в началото.
Прилагам видео, което записах като първи опит за следене на комуникацията - https://drive.google.com/open?id=0BwD6o ... E9wTU1Dd1E
Също така и един документ за анализ на данните - https://drive.google.com/open?id=1KcVzQ ... StGtw9ZOT4
Greyko Monitor - git репозитори, където разработвам .NET приложение, което да комуникира с горелката
Малко понахвърлях безразборно нещата, но с времето ще ги дооформя и форматирам
Та какво съм открил до тук:
I. Базови принципи.
Настройки на серийния порт - 9600 / 8 / 1 / N
0x5A 0x5A - 2 bytes - хедър
0xXX - 1 byte - общ размер на данните, включително и checksum-ата
0xXX - 1 byte - command Id (този параметър се изпраща само при заявката за да укаже на горелката какво искаме да ни върне или какъв параметър искаме да променим)
....
0xXX - данни - особеност тук е, че стойността на всеки байт информация се увеличава със стойността на отместването му спряно началото на командата
....
0xXX - 1 byte - checksum - смята се сумата на всички данни след хедъра и след това XOR 0xFF
II. Команди
0x01 - изисква обща информация за състоянието на горелката
0x04 - взема настройките за режимите на работа на горелката
0x07 - сменя Tset на горелката
Веднага искам да уточня, че става дума за reverse engineering на протокола за комуникация през серийния порт на контролера. За целта просто ще се прави запис на вървящата комуникация и след това анализ на база показанията на горелката и приложението. Дезасемблирането на софтуера, както на горелката, така и на NPBC_Monitor.exe, биха могли да бъдат разглеждани като нарушение авторските права на производителя, затова искам да подчертая, че няма да се занимаваме с това.
------
Използвам следната постановка:
1. Горелка Greyko RB30 + RS232 към USB адаптор
2. Виртуална машина с Windows 7
3. Trial версия на Device Monitoring Studio
Предимствата на виртуалната машина са, че лесно се пренася на друг компютър, а и изтичнето на trial периода не е болка за умиране ако сме си направили един snapshot в началото.
Прилагам видео, което записах като първи опит за следене на комуникацията - https://drive.google.com/open?id=0BwD6o ... E9wTU1Dd1E
Също така и един документ за анализ на данните - https://drive.google.com/open?id=1KcVzQ ... StGtw9ZOT4
Greyko Monitor - git репозитори, където разработвам .NET приложение, което да комуникира с горелката
Малко понахвърлях безразборно нещата, но с времето ще ги дооформя и форматирам
Та какво съм открил до тук:
I. Базови принципи.
Настройки на серийния порт - 9600 / 8 / 1 / N
0x5A 0x5A - 2 bytes - хедър
0xXX - 1 byte - общ размер на данните, включително и checksum-ата
0xXX - 1 byte - command Id (този параметър се изпраща само при заявката за да укаже на горелката какво искаме да ни върне или какъв параметър искаме да променим)
....
0xXX - данни - особеност тук е, че стойността на всеки байт информация се увеличава със стойността на отместването му спряно началото на командата
....
0xXX - 1 byte - checksum - смята се сумата на всички данни след хедъра и след това XOR 0xFF
II. Команди
0x01 - изисква обща информация за състоянието на горелката
0x04 - взема настройките за режимите на работа на горелката
0x07 - сменя Tset на горелката