[{"data":1,"prerenderedAt":1192},["ShallowReactive",2],{"docs-nav-docs_cs":3,"docs-page-\u002Fcs\u002Fexamples\u002Fserial-modbus-master":366,"docs-surround-\u002Fcs\u002Fexamples\u002Fserial-modbus-master":1189},[4],{"title":5,"path":6,"stem":7,"children":8},"Cs","\u002Fcs","cs",[9,13,41,58,76,103,157,171,190,211,238,282,302],{"title":10,"path":6,"stem":11,"navTitle":12},"Dokumentace QInsight","cs\u002Findex","Přehled",{"title":14,"navTitle":15,"path":16,"stem":17,"children":18,"page":40},"Začínáme",null,"\u002Fcs\u002Fgetting-started","cs\u002F01.getting-started",[19,23,27,31,36],{"title":20,"path":21,"stem":22,"navTitle":20},"Co je QENEX Suite","\u002Fcs\u002Fgetting-started\u002Fwhat-is-qenex-suite","cs\u002F01.getting-started\u002F1.what-is-qenex-suite",{"title":24,"path":25,"stem":26,"navTitle":24},"Co je QInsight","\u002Fcs\u002Fgetting-started\u002Fwhat-is-qinsight","cs\u002F01.getting-started\u002F2.what-is-qinsight",{"title":28,"path":29,"stem":30,"navTitle":28},"Instalace","\u002Fcs\u002Fgetting-started\u002Finstallation","cs\u002F01.getting-started\u002F3.installation",{"title":32,"path":33,"stem":34,"navTitle":35},"Uživatelské rozhraní QInsight","\u002Fcs\u002Fgetting-started\u002Fthe-qinsight-interface","cs\u002F01.getting-started\u002F4.the-qinsight-interface","Uživatelské rozhraní",{"title":37,"path":38,"stem":39,"navTitle":37},"Licencování","\u002Fcs\u002Fgetting-started\u002Flicensing","cs\u002F01.getting-started\u002F5.licensing",false,{"title":42,"navTitle":15,"path":43,"stem":44,"children":45,"page":40},"První projekt","\u002Fcs\u002Ffirst-project","cs\u002F02.first-project",[46,50,54],{"title":47,"path":48,"stem":49,"navTitle":47},"Založení projektu","\u002Fcs\u002Ffirst-project\u002Fcreate-a-project","cs\u002F02.first-project\u002F1.create-a-project",{"title":51,"path":52,"stem":53,"navTitle":51},"Struktura projektu","\u002Fcs\u002Ffirst-project\u002Fproject-structure","cs\u002F02.first-project\u002F2.project-structure",{"title":55,"path":56,"stem":57,"navTitle":55},"Heslo projektu","\u002Fcs\u002Ffirst-project\u002Fproject-password","cs\u002F02.first-project\u002F3.project-password",{"title":59,"navTitle":15,"path":60,"stem":61,"children":62,"page":40},"Připojení zařízení","\u002Fcs\u002Fconnecting-a-device","cs\u002F03.connecting-a-device",[63,67,71],{"title":64,"path":65,"stem":66,"navTitle":64},"Přidání driveru","\u002Fcs\u002Fconnecting-a-device\u002Fadd-a-driver","cs\u002F03.connecting-a-device\u002F1.add-a-driver",{"title":68,"path":69,"stem":70,"navTitle":68},"Přidání protokolu","\u002Fcs\u002Fconnecting-a-device\u002Fadd-a-protocol","cs\u002F03.connecting-a-device\u002F2.add-a-protocol",{"title":72,"path":73,"stem":74,"navTitle":75},"Propojení driveru a protokolu","\u002Fcs\u002Fconnecting-a-device\u002Flink-driver-and-protocol","cs\u002F03.connecting-a-device\u002F3.link-driver-and-protocol","Propojení",{"title":77,"navTitle":15,"path":78,"stem":79,"children":80,"page":40},"Proměnné","\u002Fcs\u002Fvariables","cs\u002F04.variables",[81,85,89,93,98],{"title":82,"path":83,"stem":84,"navTitle":82},"Co je proměnná","\u002Fcs\u002Fvariables\u002Fwhat-is-a-variable","cs\u002F04.variables\u002F1.what-is-a-variable",{"title":86,"path":87,"stem":88,"navTitle":86},"Konverze a prezentace","\u002Fcs\u002Fvariables\u002Fconversion-and-presentation","cs\u002F04.variables\u002F2.conversion-and-presentation",{"title":90,"path":91,"stem":92,"navTitle":90},"Přidání proměnné","\u002Fcs\u002Fvariables\u002Fadd-a-variable","cs\u002F04.variables\u002F3.add-a-variable",{"title":94,"path":95,"stem":96,"navTitle":97},"Proměnná Matrix (pole, křivka, mapa)","\u002Fcs\u002Fvariables\u002Fmatrix-variable","cs\u002F04.variables\u002F4.matrix-variable","Proměnná Matrix",{"title":99,"path":100,"stem":101,"navTitle":102},"Události (Events)","\u002Fcs\u002Fvariables\u002Fevents","cs\u002F04.variables\u002F5.events","Události",{"title":104,"navTitle":15,"path":105,"stem":106,"children":107,"page":40},"Vizualizace","\u002Fcs\u002Fvisualization","cs\u002F05.visualization",[108,113,118,122,127,132,137,142,147,152],{"title":109,"path":110,"stem":111,"navTitle":112},"Vytvoření pracovní plochy","\u002Fcs\u002Fvisualization\u002Fcreate-a-workspace","cs\u002F05.visualization\u002F1.create-a-workspace","Pracovní plocha",{"title":114,"path":115,"stem":116,"navTitle":117},"Zápis hodnot do zařízení","\u002Fcs\u002Fvisualization\u002Fwrite-to-device","cs\u002F05.visualization\u002F10.write-to-device","Zápis do zařízení",{"title":119,"path":120,"stem":121,"navTitle":119},"Přidání controlu","\u002Fcs\u002Fvisualization\u002Fadd-a-control","cs\u002F05.visualization\u002F2.add-a-control",{"title":123,"path":124,"stem":125,"navTitle":126},"Navázání controlu na proměnnou","\u002Fcs\u002Fvisualization\u002Fbind-a-control","cs\u002F05.visualization\u002F3.bind-a-control","Navázání controlu",{"title":128,"path":129,"stem":130,"navTitle":131},"Graph — časový průběh signálů","\u002Fcs\u002Fvisualization\u002Fgraph-control","cs\u002F05.visualization\u002F4.graph-control","Graph",{"title":133,"path":134,"stem":135,"navTitle":136},"XY Graph — signál proti signálu","\u002Fcs\u002Fvisualization\u002Fxy-graph-control","cs\u002F05.visualization\u002F5.xy-graph-control","XY Graph",{"title":138,"path":139,"stem":140,"navTitle":141},"Gauge — ukazatel okamžité hodnoty","\u002Fcs\u002Fvisualization\u002Fgauge-control","cs\u002F05.visualization\u002F6.gauge-control","Gauge",{"title":143,"path":144,"stem":145,"navTitle":146},"Single-Signal — hodnota s popiskem","\u002Fcs\u002Fvisualization\u002Fsignal-control","cs\u002F05.visualization\u002F7.signal-control","Single-Signal",{"title":148,"path":149,"stem":150,"navTitle":151},"Watch Table — tabulka proměnných","\u002Fcs\u002Fvisualization\u002Fwatch-table-control","cs\u002F05.visualization\u002F8.watch-table-control","Watch Table",{"title":153,"path":154,"stem":155,"navTitle":156},"Matrix control — mapy a kalibrace","\u002Fcs\u002Fvisualization\u002Fmatrix-control","cs\u002F05.visualization\u002F9.matrix-control","Matrix control",{"title":158,"navTitle":15,"path":159,"stem":160,"children":161,"page":40},"Běh a sledování","\u002Fcs\u002Frunning","cs\u002F06.running",[162,166],{"title":163,"path":164,"stem":165,"navTitle":163},"Spuštění a zastavení","\u002Fcs\u002Frunning\u002Fstart-and-stop","cs\u002F06.running\u002F1.start-and-stop",{"title":167,"path":168,"stem":169,"navTitle":170},"Sledování živých dat","\u002Fcs\u002Frunning\u002Fwatching-live-data","cs\u002F06.running\u002F2.watching-live-data","Živá data",{"title":172,"navTitle":15,"path":173,"stem":174,"children":175,"page":40},"Logování a přehrávání","\u002Fcs\u002Flogging-and-replay","cs\u002F07.logging-and-replay",[176,180,185],{"title":177,"path":178,"stem":179,"navTitle":177},"Logování dat","\u002Fcs\u002Flogging-and-replay\u002Flogging-data","cs\u002F07.logging-and-replay\u002F1.logging-data",{"title":181,"path":182,"stem":183,"navTitle":184},"Přehrávání logu","\u002Fcs\u002Flogging-and-replay\u002Freplaying-a-log","cs\u002F07.logging-and-replay\u002F2.replaying-a-log","Přehrávání",{"title":186,"path":187,"stem":188,"navTitle":189},"Export dat","\u002Fcs\u002Flogging-and-replay\u002Fexporting-data","cs\u002F07.logging-and-replay\u002F3.exporting-data","Export",{"title":191,"navTitle":15,"path":192,"stem":193,"children":194,"page":40},"Python skripty","\u002Fcs\u002Fpython-scripts","cs\u002F08.python-scripts",[195,199,203,207],{"title":196,"path":197,"stem":198,"navTitle":12},"Přehled skriptů","\u002Fcs\u002Fpython-scripts\u002Fscripts-overview","cs\u002F08.python-scripts\u002F1.scripts-overview",{"title":200,"path":201,"stem":202,"navTitle":200},"Přístup k proměnným","\u002Fcs\u002Fpython-scripts\u002Faccessing-variables","cs\u002F08.python-scripts\u002F2.accessing-variables",{"title":204,"path":205,"stem":206,"navTitle":204},"Příklad skriptu","\u002Fcs\u002Fpython-scripts\u002Fexample-script","cs\u002F08.python-scripts\u002F3.example-script",{"title":208,"path":209,"stem":210,"navTitle":208},"Post-processing CSV","\u002Fcs\u002Fpython-scripts\u002Fcsv-post-processing","cs\u002F08.python-scripts\u002F4.csv-post-processing",{"title":212,"navTitle":15,"path":213,"stem":214,"children":215,"page":40},"Vlastní rozšíření","\u002Fcs\u002Fcustom-extensions","cs\u002F09.custom-extensions",[216,220,224,228,233],{"title":217,"path":218,"stem":219,"navTitle":217},"Vlastní driver","\u002Fcs\u002Fcustom-extensions\u002Fcustom-driver","cs\u002F09.custom-extensions\u002F1.custom-driver",{"title":221,"path":222,"stem":223,"navTitle":221},"Vlastní protokol","\u002Fcs\u002Fcustom-extensions\u002Fcustom-protocol","cs\u002F09.custom-extensions\u002F2.custom-protocol",{"title":225,"path":226,"stem":227,"navTitle":225},"Vlastní Control","\u002Fcs\u002Fcustom-extensions\u002Fcustom-control","cs\u002F09.custom-extensions\u002F3.custom-control",{"title":229,"path":230,"stem":231,"navTitle":232},"Kompletní ukázka — poloha ISS","\u002Fcs\u002Fcustom-extensions\u002Fiss-example","cs\u002F09.custom-extensions\u002F4.iss-example","Ukázka ISS",{"title":234,"path":235,"stem":236,"navTitle":237},"Kompletní ukázka — teploměr","\u002Fcs\u002Fcustom-extensions\u002Ftemp-sensor-example","cs\u002F09.custom-extensions\u002F5.temp-sensor-example","Ukázka teploměr",{"title":239,"navTitle":15,"path":240,"stem":241,"children":242,"page":40},"QFW SDK","\u002Fcs\u002Fdevice-sdk","cs\u002F10.device-sdk",[243,248,253,258,263,268,272,277],{"title":244,"path":245,"stem":246,"navTitle":247},"QFW SDK — úvod","\u002Fcs\u002Fdevice-sdk\u002Fintroduction","cs\u002F10.device-sdk\u002F1.introduction","Úvod",{"title":249,"path":250,"stem":251,"navTitle":252},"XCP v QFW SDK","\u002Fcs\u002Fdevice-sdk\u002Fxcp","cs\u002F10.device-sdk\u002F2.xcp","XCP",{"title":254,"path":255,"stem":256,"navTitle":257},"Integrace krok za krokem: XCP on TCP s FreeRTOS + lwIP","\u002Fcs\u002Fdevice-sdk\u002Fintegration-tcp","cs\u002F10.device-sdk\u002F3.integration-tcp","Integrace: XCP on TCP",{"title":259,"path":260,"stem":261,"navTitle":262},"XCP on classic CAN — co se mění","\u002Fcs\u002Fdevice-sdk\u002Fcan","cs\u002F10.device-sdk\u002F4.can","XCP on classic CAN",{"title":264,"path":265,"stem":266,"navTitle":267},"Integrace bez RTOS: XCP on TCP z hlavní smyčky","\u002Fcs\u002Fdevice-sdk\u002Fbaremetal","cs\u002F10.device-sdk\u002F5.baremetal","Integrace bez RTOS",{"title":269,"path":270,"stem":271,"navTitle":269},"Kontrakt enginu","\u002Fcs\u002Fdevice-sdk\u002Fengine-contract","cs\u002F10.device-sdk\u002F6.engine-contract",{"title":273,"path":274,"stem":275,"navTitle":276},"Adresy proměnných pro QInsight","\u002Fcs\u002Fdevice-sdk\u002Fvariable-addresses","cs\u002F10.device-sdk\u002F7.variable-addresses","Adresy proměnných",{"title":278,"path":279,"stem":280,"navTitle":281},"Řešení potíží při integraci SDK","\u002Fcs\u002Fdevice-sdk\u002Ftroubleshooting","cs\u002F10.device-sdk\u002F8.troubleshooting","Řešení potíží",{"title":283,"navTitle":15,"path":284,"stem":285,"children":286,"page":40},"Reference","\u002Fcs\u002Freference","cs\u002F11.reference",[287,291,295,299],{"title":288,"path":289,"stem":290,"navTitle":288},"Drivery","\u002Fcs\u002Freference\u002Fdrivers","cs\u002F11.reference\u002F1.drivers",{"title":292,"path":293,"stem":294,"navTitle":292},"Protokoly","\u002Fcs\u002Freference\u002Fprotocols","cs\u002F11.reference\u002F2.protocols",{"title":296,"path":297,"stem":298,"navTitle":296},"Controls","\u002Fcs\u002Freference\u002Fcontrols","cs\u002F11.reference\u002F3.controls",{"title":281,"path":300,"stem":301,"navTitle":281},"\u002Fcs\u002Freference\u002Ftroubleshooting","cs\u002F11.reference\u002F4.troubleshooting",{"title":303,"navTitle":15,"path":304,"stem":305,"children":306,"page":40},"Příklady","\u002Fcs\u002Fexamples","cs\u002F12.examples",[307,311,316,321,326,330,334,338,342,346,351,356,361],{"title":308,"path":309,"stem":310,"navTitle":308},"Simulace: všechny signály","\u002Fcs\u002Fexamples\u002Fsimulation-all-signals","cs\u002F12.examples\u002F01.simulation-all-signals",{"title":312,"path":313,"stem":314,"navTitle":315},"Modbus RTU master po sériové lince","\u002Fcs\u002Fexamples\u002Fserial-modbus-master","cs\u002F12.examples\u002F02.serial-modbus-master","Modbus RTU master",{"title":317,"path":318,"stem":319,"navTitle":320},"Modbus RTU slave se simulovanými senzory","\u002Fcs\u002Fexamples\u002Fserial-modbus-slave","cs\u002F12.examples\u002F03.serial-modbus-slave","Modbus RTU slave",{"title":322,"path":323,"stem":324,"navTitle":325},"Modbus TCP master přes TCP klienta","\u002Fcs\u002Fexamples\u002Ftcp-client-modbus-master","cs\u002F12.examples\u002F04.tcp-client-modbus-master","Modbus TCP master",{"title":327,"path":328,"stem":329,"navTitle":327},"Modbus TCP slave na TCP serveru","\u002Fcs\u002Fexamples\u002Ftcp-server-modbus-slave","cs\u002F12.examples\u002F05.tcp-server-modbus-slave",{"title":331,"path":332,"stem":333,"navTitle":331},"Bitové pole a skript","\u002Fcs\u002Fexamples\u002Fbit-field-script","cs\u002F12.examples\u002F08.bit-field-script",{"title":335,"path":336,"stem":337,"navTitle":335},"Dvě ECU najednou","\u002Fcs\u002Fexamples\u002Ftwo-ecus","cs\u002F12.examples\u002F09.two-ecus",{"title":339,"path":340,"stem":341,"navTitle":339},"Poloha ISS naživo","\u002Fcs\u002Fexamples\u002Fiss-live-tracking","cs\u002F12.examples\u002F10.iss-live-tracking",{"title":343,"path":344,"stem":345,"navTitle":343},"Simulovaný teploměr","\u002Fcs\u002Fexamples\u002Fsimul-temp-measure","cs\u002F12.examples\u002F11.simul-temp-measure",{"title":347,"path":348,"stem":349,"navTitle":350},"JSON signály z Python generátoru","\u002Fcs\u002Fexamples\u002Fjson-signal-python","cs\u002F12.examples\u002F12.json-signal-python","JSON signály z Pythonu",{"title":352,"path":353,"stem":354,"navTitle":355},"Raw CAN rámce z Raspberry","\u002Fcs\u002Fexamples\u002Fraw-can-python","cs\u002F12.examples\u002F13.raw-can-python","Raw CAN z Raspberry",{"title":357,"path":358,"stem":359,"navTitle":360},"XCP on TCP na NUCLEO-H723ZG: měření, stimulace a kalibrační mapy","\u002Fcs\u002Fexamples\u002Ftcp-client-xcp-nucleo-maps","cs\u002F12.examples\u002F14.tcp-client-xcp-nucleo-maps","XCP on TCP na NUCLEO-H723ZG",{"title":362,"path":363,"stem":364,"navTitle":365},"XCP on CAN na NUCLEO-H723ZG: měření, stimulace a kalibrační mapy","\u002Fcs\u002Fexamples\u002Fcan-xcp-nucleo-maps","cs\u002F12.examples\u002F15.can-xcp-nucleo-maps","XCP on CAN na NUCLEO-H723ZG",{"id":367,"title":312,"body":368,"description":1183,"extension":1184,"meta":1185,"navTitle":315,"navigation":1186,"path":313,"seo":1187,"stem":314,"__hash__":1188},"docs_cs\u002Fcs\u002F12.examples\u002F02.serial-modbus-master.md",{"type":369,"value":370,"toc":1168},"minimark",[371,375,388,393,412,447,451,470,473,504,508,513,516,623,676,709,712,727,730,763,885,906,936,940,947,1033,1036,1040,1120,1124],[372,373,312],"h1",{"id":374},"modbus-rtu-master-po-sériové-lince",[376,377,378,379,383,384,387],"p",{},"Projekt ",[380,381,382],"code",{},"Qenex_Serial_ModbusMaster_HoldingRegisters.qproj"," najdete ve složce\n",[380,385,386],{},"Examples"," vedle QInsight.exe.",[389,390,392],"h2",{"id":391},"co-ukázka-předvádí","Co ukázka předvádí",[376,394,395,396,399,400,403,404,407,408,411],{},"QInsight tu vystupuje jako ",[397,398,315],"strong",{},": driver ",[397,401,402],{},"Serial Port\n(COM)"," s protokolem ",[397,405,406],{},"Modbus Master"," v režimu ",[380,409,410],{},"rtu"," čte každou sekundu\nholding registry ze slave s adresou 2. Ukázka předvádí:",[413,414,415,419,429,435,441],"ul",{},[416,417,418],"li",{},"nastavení driveru i protokolu přesně tak, jak se zadává v Project\nConfiguration,",[416,420,421,424,425,428],{},[397,422,423],{},"skalární proměnné v holding registrech"," (",[380,426,427],{},"ushort",", jeden registr na\nproměnnou) s lineární konverzí a jednotkou,",[416,430,431,434],{},[397,432,433],{},"proměnnou Matrix přenášenou jako souvislý blok registrů"," — osy\ni datové buňky mapy v jednom požadavku,",[416,436,437,440],{},[397,438,439],{},"zápis do zařízení"," z Watch Table (skaláry) a z Matrix controlu\n(buňky mapy),",[416,442,443,446],{},[397,444,445],{},"obnovu spojení"," driveru po odpojení převodníku a automatické\npokračování masteru.",[389,448,450],{"id":449},"co-potřebujete","Co potřebujete",[376,452,453,454,457,458,461,462,465,466,469],{},"Protějškem je libovolný ",[397,455,456],{},"Modbus RTU slave s unit id 2",", který nabízí\nholding registry na adresách 0–12. Bez hardwaru lze použít simulátor, např.\n",[397,459,460],{},"pyModSlave",": dvojici virtuálních COM portů (QInsight na jednom, simulátor\nna druhém) a v simulátoru\n",[397,463,464],{},"RTU",", ",[397,467,468],{},"slave id 2",", 9600 Bd, 8N1, holding registry od adresy 0.\nS reálným zařízením stačí převodník USB\u002FRS-485.",[376,471,472],{},"Před spuštěním upravte v Project Configuration to, co je specifické pro váš\npočítač a zařízení:",[413,474,475,485,498],{},[416,476,477,480,481,484],{},[380,478,479],{},"port"," v nastavení driveru — projekt má ",[380,482,483],{},"COM6","; zadejte port, na kterém\nje převodník nebo váš konec virtuálního páru,",[416,486,487,490,491,465,494,497],{},[380,488,489],{},"baudRate"," (a případně ",[380,492,493],{},"parity",[380,495,496],{},"stopBits",") podle zařízení — projekt\npočítá s 9600 Bd, 8N1,",[416,499,500,503],{},[380,501,502],{},"unitId"," v nastavení protokolu, pokud slave nemá adresu 2.",[389,505,507],{"id":506},"projekt","Projekt",[509,510,512],"h3",{"id":511},"drivery-a-protokoly","Drivery a protokoly",[376,514,515],{},"Komunikaci obstarává jedna dvojice driver + protokol. Nastavení jsou\nuložená přesně takto:",[517,518,519,532],"table",{},[520,521,522],"thead",{},[523,524,525,529],"tr",{},[526,527,528],"th",{},"Driver Serial Port (COM)",[526,530,531],{},"Význam",[533,534,535,549,559,569,579,589,599,609],"tbody",{},[523,536,537,543],{},[538,539,540],"td",{},[380,541,542],{},"port=COM6",[538,544,545,546],{},"jméno COM portu — ",[397,547,548],{},"upravte podle svého počítače",[523,550,551,556],{},[538,552,553],{},[380,554,555],{},"baudRate=9600",[538,557,558],{},"komunikační rychlost",[523,560,561,566],{},[538,562,563],{},[380,564,565],{},"dataBits=8",[538,567,568],{},"počet datových bitů",[523,570,571,576],{},[538,572,573],{},[380,574,575],{},"parity=none",[538,577,578],{},"bez parity",[523,580,581,586],{},[538,582,583],{},[380,584,585],{},"stopBits=1",[538,587,588],{},"jeden stop bit",[523,590,591,596],{},[538,592,593],{},[380,594,595],{},"handshake=none",[538,597,598],{},"bez řízení toku",[523,600,601,606],{},[538,602,603],{},[380,604,605],{},"reconnectDelayMs=2000",[538,607,608],{},"prodleva před znovuotevřením portu po chybě",[523,610,611,616],{},[538,612,613],{},[380,614,615],{},"reconnectAttempts=5",[538,617,618,619,622],{},"po pěti po sobě jdoucích neúspěšných pokusech se driver zastaví (výchozí je ",[380,620,621],{},"-1"," = bez omezení počtu pokusů)",[517,624,625,634],{},[520,626,627],{},[523,628,629,632],{},[526,630,631],{},"Protokol Modbus Master (RTU\u002FTCP)",[526,633,531],{},[533,635,636,646,656,666],{},[523,637,638,643],{},[538,639,640],{},[380,641,642],{},"mode=rtu",[538,644,645],{},"rámování RTU (CRC16) pro sériovou linku",[523,647,648,653],{},[538,649,650],{},[380,651,652],{},"unitId=2",[538,654,655],{},"adresa slave, se kterým master komunikuje",[523,657,658,663],{},[538,659,660],{},[380,661,662],{},"requestTimeoutMs=2000",[538,664,665],{},"timeout odpovědi na jeden dotaz",[523,667,668,673],{},[538,669,670],{},[380,671,672],{},"requestRetries=8",[538,674,675],{},"počet opakování dotazu po timeoutu, navíc k prvnímu pokusu (až 9 vysílání)",[376,677,678,679,424,682,685,686,689,690,693,694,697,698,701,702,424,705,708],{},"Projekt obsahuje ještě dva drivery, které pro ukázku Modbusu nejsou\npotřeba: ",[397,680,681],{},"Data Log Recorder",[380,683,684],{},"file=DataLogs;append=true;flushOnWrite=false;reorderBufferMs=500",")\nje zapnutý a při každém běhu zapisuje ",[380,687,688],{},"EngTorque"," a ",[380,691,692],{},"Torque"," do souboru\n",[380,695,696],{},".qilog"," ve složce ",[380,699,700],{},"DataLogs"," vedle projektu (matice se neloguje);\n",[397,703,704],{},"Data Log Replay",[380,706,707],{},"file=DataLogs\\values.qilog;mode=realtime;speed=1;loop=false",")\nje vypnutý. Pokud logování nechcete, driver Data Log Recorder vypněte.",[509,710,102],{"id":711},"události",[376,713,714,715,718,719,722,723,726],{},"Projekt má jednu periodickou událost ",[380,716,717],{},"Pool500ms"," s periodou ",[397,720,721],{},"1000 ms","\n(název neodpovídá skutečné periodě, chování určuje hodnota ",[397,724,725],{},"Period",").\nNa tuto událost jsou navázané všechny tři proměnné, master tedy každou\nsekundu pošle tři samostatné požadavky FC03 — jeden na každou proměnnou.",[509,728,77],{"id":729},"proměnné",[376,731,732,733,736,737,739,740,743,744,747,748,465,751,754,755,758,759,762],{},"Všechny proměnné jsou ve jmenném prostoru ",[380,734,735],{},"\u002FModbus",", typ ",[380,738,427],{},"\na sdílejí prezentaci ",[380,741,742],{},"ModbusSImple",": konverze ",[380,745,746],{},"Pass-through"," je lineární\ns ",[380,749,750],{},"multiplier=0.01",[380,752,753],{},"offset=0"," (inženýrská hodnota = raw × 0,01, tedy\nraw 12345 se zobrazí jako 123,450), jednotka ",[380,756,757],{},"Nm",", formát ",[380,760,761],{},"{0:F3}",",\nrozsah 0–65535.",[517,764,765,790],{},[520,766,767],{},[523,768,769,772,775,778,781,784,787],{},[526,770,771],{},"Proměnná",[526,773,774],{},"Typ",[526,776,777],{},"Registr",[526,779,780],{},"Adresa",[526,782,783],{},"Směr",[526,785,786],{},"Událost",[526,788,789],{},"Prezentace",[533,791,792,824,853],{},[523,793,794,799,804,807,810,815,819],{},[538,795,796,798],{},[380,797,688],{}," (Engine torque)",[538,800,801,802],{},"scalar ",[380,803,427],{},[538,805,806],{},"holding",[538,808,809],{},"0",[538,811,812],{},[380,813,814],{},"readWrite",[538,816,817],{},[380,818,717],{},[538,820,821,823],{},[380,822,742],{}," (× 0,01, Nm)",[523,825,826,831,835,837,840,845,849],{},[538,827,828,830],{},[380,829,692],{}," (Torque)",[538,832,801,833],{},[380,834,427],{},[538,836,806],{},[538,838,839],{},"1",[538,841,842],{},[380,843,844],{},"read",[538,846,847],{},[380,848,717],{},[538,850,851,823],{},[380,852,742],{},[523,854,855,861,867,869,872,876,880],{},[538,856,857,860],{},[380,858,859],{},"Drivability"," (Drivability)",[538,862,863,864,866],{},"matrix ",[380,865,427],{},", 3 × 2",[538,868,806],{},[538,870,871],{},"2",[538,873,874],{},[380,875,814],{},[538,877,878],{},[380,879,717],{},[538,881,882,884],{},[380,883,742],{}," na osách i datech",[376,886,887,888,891,892,894,895,465,898,901,902,905],{},"Comm params skalárů: ",[380,889,890],{},"registerType=\"holdingRegister\";address=\"0\";wordOrder=\"big\";direction=\"readWrite\";eventRef=\"Pool500ms\"","\n(u ",[380,893,692],{}," ",[380,896,897],{},"address=\"1\"",[380,899,900],{},"direction=\"read\"","). ",[380,903,904],{},"wordOrder"," se u\njednoregistrových hodnot neuplatní.",[376,907,908,910,911,915,916,919,920,923,924,927,928,932,933,935],{},[380,909,859],{}," je ",[912,913,914],"a",{"href":95},"proměnná Matrix"," — mapa\ns osou X ",[380,917,918],{},"Speed [RPM]"," (3 body), osou Y ",[380,921,922],{},"Temp. [K]"," (2 body) a 6 datovými\nbuňkami, celkem 11 hodnot = 22 bajtů, Endianness ",[380,925,926],{},"be",". Modbus Master ji\npřenáší jako ",[912,929,931],{"href":930},"\u002Fcs\u002Freference\u002Fprotocols#prom%C4%9Bnn%C3%A9-typu-matrix","souvislý blok","\n11 holding registrů od adresy 2 (adresy 2–12); čtení je jeden požadavek\nFC03, zápis posílá jen změněné buňky. Prezentace ",[380,934,742],{}," je\npřiřazená i oběma osám, takže se hodnoty os zobrazují s jednotkou Nm.",[509,937,939],{"id":938},"workspace","Workspace",[376,941,942,943,946],{},"Jeden workspace (",[380,944,945],{},"Workspace6904",") s pěti controly:",[517,948,949,961],{},[520,950,951],{},[523,952,953,956,958],{},[526,954,955],{},"Control",[526,957,77],{},[526,959,960],{},"Poznámka",[533,962,963,980,994,1004,1018],{},[523,964,965,969,977],{},[538,966,967],{},[912,968,131],{"href":129},[538,970,971,973,974,976],{},[380,972,688],{}," (červená, levá osa), ",[380,975,692],{}," (modrá, pravá osa)",[538,978,979],{},"okno 10 s, obě osy auto-scale",[523,981,982,987,991],{},[538,983,984],{},[912,985,986],{"href":144},"Signal",[538,988,989],{},[380,990,688],{},[538,992,993],{},"obnova 250 ms",[523,995,996,998,1002],{},[538,997,986],{},[538,999,1000],{},[380,1001,692],{},[538,1003,993],{},[523,1005,1006,1011,1015],{},[538,1007,1008],{},[912,1009,1010],{"href":154},"Matrix",[538,1012,1013],{},[380,1014,859],{},[538,1016,1017],{},"AutoRead, zápis buňky klávesou Enter (WriteOnEnter)",[523,1019,1020,1024,1030],{},[538,1021,1022],{},[912,1023,151],{"href":149},[538,1025,1026,465,1028],{},[380,1027,692],{},[380,1029,688],{},[538,1031,1032],{},"sloupce Name, Value, Unit, Time, Write",[376,1034,1035],{},"Žádný control není uložený v write módu — zápis se zapíná až za běhu.",[389,1037,1039],{"id":1038},"co-uvidíte-a-co-vyzkoušet","Co uvidíte a co vyzkoušet",[1041,1042,1043,1053,1075,1081],"ol",{},[416,1044,1045,1048,1049,1052],{},[397,1046,1047],{},"Čtení."," Spusťte runtime (",[397,1050,1051],{},"Start","). Driver otevře COM port, master\nzačne každou sekundu číst registry 0, 1 a blok 2–12. V simulátoru\nzměňte holding registr 0 nebo 1 a sledujte, jak se hodnota během jedné\nsekundy objeví v grafu, Signal controlu i Watch Table — vydělená stem\na s jednotkou Nm.",[416,1054,1055,1058,1059,1061,1062,1065,1066,1068,1069,1071,1072,1074],{},[397,1056,1057],{},"Zápis skaláru."," Ve Watch Table zapněte write mód řádku ",[380,1060,688],{},"\n(sloupec Write), zadejte inženýrskou hodnotu, např. ",[380,1063,1064],{},"123.45",", a\npotvrďte. Master pošle do registru 0 raw hodnotu 12345 a v simulátoru\nji uvidíte. ",[380,1067,692],{}," je jen ",[380,1070,844],{},", u ní zápis není k dispozici.\nPodrobně ",[912,1073,114],{"href":115},".",[416,1076,1077,1080],{},[397,1078,1079],{},"Zápis buňky mapy."," V Matrix controlu zapněte write mód, přepište\nbuňku nebo bod osy a potvrďte Enterem — do slave odejde jen dotčený\nregistr z bloku 2–12.",[416,1082,1083,1086,1087,1090,1091,1094,1095,1098,1099,1101,1102,1106,1107,1110,1111,1113,1114,1116,1117,1119],{},[397,1084,1085],{},"Výpadek spojení."," Za běhu odpojte USB převodník (nebo zavřete\nvirtuální port). Driver přejde do stavu ",[397,1088,1089],{},"Faulted",", master dotazy\npozastaví a driver se pokouší port znovu otevřít každé 2 s, nejvýše\npětkrát. Znovu připojte převodník během těchto přibližně deseti sekund —\ndriver port otevře, master automaticky pokračuje ve čtení a v grafu je\nvidět jen mezera. Po vyčerpání limitu driver skončí ve stavu ",[397,1092,1093],{},"Stopped"," s chybou\n",[380,1096,1097],{},"gave up after 5 reconnect attempt(s)"," a spustíte ho znovu tlačítkem\n",[397,1100,1051],{}," v jeho vlastnostech (viz\n",[912,1103,1105],{"href":1104},"\u002Fcs\u002Frunning\u002Fstart-and-stop#stavy-driver%C5%AF-a-tla%C4%8D%C3%ADtko-start","Stavy driverů a tlačítko Start",").\nPro opakování bez omezení nastavte ",[380,1108,1109],{},"reconnectAttempts=-1",". Pokud\nnaopak neodpovídá slave (nesprávný ",[380,1112,502],{},", vypnutý simulátor), port\nzůstává otevřený a chybu ohlásí až protokol po vypršení timeoutu — s ",[380,1115,662],{},"\na ",[380,1118,672],{}," čeká na jeden dotaz až 9 × 2 s.",[389,1121,1123],{"id":1122},"související-kapitoly","Související kapitoly",[413,1125,1126,1136,1146,1155,1163],{},[416,1127,1128,1116,1132,1074],{},[912,1129,1131],{"href":1130},"\u002Fcs\u002Freference\u002Fdrivers#serial-port-com","Reference — Serial Port (COM)",[912,1133,1135],{"href":1134},"\u002Fcs\u002Freference\u002Fdrivers#obnova-spojen%C3%AD","Obnova spojení",[416,1137,1138,1142,1143,1074],{},[912,1139,1141],{"href":1140},"\u002Fcs\u002Freference\u002Fprotocols#modbus-master-rtutcp","Reference — Modbus Master (RTU\u002FTCP)","\nvčetně ",[912,1144,1145],{"href":930},"proměnných typu Matrix",[416,1147,1148,1150,1151,465,1153,1074],{},[912,1149,86],{"href":87},",\n",[912,1152,102],{"href":100},[912,1154,97],{"href":95},[416,1156,1157,1150,1159,1150,1161,1074],{},[912,1158,151],{"href":149},[912,1160,156],{"href":154},[912,1162,114],{"href":115},[416,1164,1165,1167],{},[912,1166,177],{"href":178}," — funkce zapnutého\ndriveru Data Log Recorder.",{"title":1169,"searchDepth":1170,"depth":1170,"links":1171},"",3,[1172,1174,1175,1181,1182],{"id":391,"depth":1173,"text":392},2,{"id":449,"depth":1173,"text":450},{"id":506,"depth":1173,"text":507,"children":1176},[1177,1178,1179,1180],{"id":511,"depth":1170,"text":512},{"id":711,"depth":1170,"text":102},{"id":729,"depth":1170,"text":77},{"id":938,"depth":1170,"text":939},{"id":1038,"depth":1173,"text":1039},{"id":1122,"depth":1173,"text":1123},"Hotový projekt s driverem Serial Port a protokolem Modbus Master — dva holding registry a matice čtené z RTU slave, zápis z Watch Table a Matrix controlu, obnova spojení po odpojení převodníku.","md",{},true,{"title":312,"description":1183},"R2XadWcgtb4CwF3_Bp3FsbbPBqI7z5_9-i32EGJ71U4",[1190,1191],{"title":308,"path":309,"stem":310,"navTitle":308,"children":-1},{"title":317,"path":318,"stem":319,"navTitle":320,"children":-1},1791554569392]