Díky! Hned jak budu moct, tak na to kouknu!
internet je plny nedodelku a clovek se pak jen divi co si vytisknul
S tím bych si vůbec nedělal hlavu, stačí to dobře viditelně označit jako work in progress a use at your own risk a je to imho úplně v pořádku. Když chceš člověk něco udělat, je často lepší začít s něčím polohotovým, než když každej začíná od nuly a upejpá se svůj progress zveřejnit, protože to přece ještě není dokonalý
Nyni mam zasadni otazku, mam hotovou regulaci tlaku a casovani zapnuti a jdu nejak rozumne resit to ovladani prackovych ventilu. Plan je takovy, ze vezmu nejakou desticku s AVR, prihodim k tomu RS485 + relatka pro ventily a spojim to s centralnim mozkem zavlahy pres tu RS485ku. Nemam ale uplne predstavu jaky protokol bych po tom chtel honit, neco standardniho, JEDNODUSE implementovatelneho pres UART (muze to byt master-slave), na zpusob CAN-BUSu (ten je ale overkill pro tuto aplikaci). Potrebuju tam vlastne jen poslat prikaz "zapni vetev XYZ" a dostat zpet nejaky stav, ze je sepnuto. Idealne aby to bylo rozsiritelne treba o nejake dalsi prvky na stejne sbernici, treba nejaky senzor vlhkosti, hladiny, dalsi senzor tlaku, apod. Je tu nekdo kdo dela prumyslovou automatizaci a poradi mi vhodny protokol ?
Pro RS485 jednoznačně Modbus. Existují hotové implementace pro různé platformy, včetně toho tvýho zamýšlenýho AVR, existují knihovny pro různý jazyky... Je to průmyslový standard, když to dobře použiješ, je to skvěle robustní. Není to žádná překombinovaná hydra, je to jednoduchý protokol, který se pak dá docela dobře integrovat s něčím víc high level jako třeba MQTT, SparkPlug apod. A protože je to průmyslový standard, existuje i spousta SW, který s modbusem půjde dobře integrovat (např. OpenPLC ho umí dobře, to by tě mohlo zajímat).
na zpusob CAN-BUSu (ten je ale overkill pro tuto aplikaci)
Co se týče implementace, je na tom CAN velmi podobně jako ta RS485. Ve spoustě MCU ho máš nativně (v AVR teda zrovna ne, ale je např. v ESP32, STM32), takže stačí levný driver, který víceméně jenom převádí napěťové úrovně (na testování se dá CAN používat i bez něj, ale na ostré použití to rozhodně není). Výhoda CANu je v tom, že má opravdu dobře a superrobustně vyřešeno spoustu věcí. Jediné, na co si musíš dát pozor, je abys to správně zapojil (to i u té RS485ky) a abys v software správně vyřešil všechny stavy, ve kterých CAN může být (on totiž automaticky hlídá chyby a přepne se třeba do "error passive", což když člověk nezná, může být trochu překvapený, proč mu to nechodí...). Když si ale CAN osaháš, je naprosto skvělý, nedám na něj dopustit. Chyby a kolize ti pěkně pořeší sám v hw na nejnižší vrstvě. Na RS485ce ti to musí pohlídat vyšší vrstva, jako třeba ten Modbus.
----
EDIT: sorry, napsal jsem to dřív, než jsem si přečetl následující příspěvky
Ale je vidět, že se s Kříšťanem shodujem...