PyTool Modbus TCP Modbus TCP рд╡рд┐рдХрд╛рд╕, рдбрд┐рдмрдЧрд┐рдВрдЧ рд░ рдЕрдиреБрдЧрдордирдХреЛ рд▓рд╛рдЧрд┐ рдПрдХ рдЙрддреНрддрдо рдЙрдкрдХрд░рдг рд╣реЛред
рдпрд╕рд▓реЗ рдкрд╛рдЗрдерди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫ рдЬреБрди рддрдкрд╛рдИрдВрд▓рд╛рдИ рд╕рдмреИрднрдиреНрджрд╛ рдареВрд▓реЛ рд▓рдЪрд┐рд▓реЛрдкрди рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫред
Modbus TCP рдЙрдкрдХрд░рдгрдХреЛ рд▓рд╛рдЧрд┐ рдХрд┐рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреНрд╖рдорддрд╛ рдпреЛрдЧреНрдп рдЫ?
рдЗрд▓реЗрдХреНрдЯреНрд░рд┐рдХрд▓ рдИрдиреНрдЬрд┐рдирд┐рдпрд░рд╣рд░реВрд▓реЗ рдПрдиреНрдбреНрд░реЛрдЗрдб рдлреЛрди рд╡рд╛ рдЯреНрдпрд╛рдмреНрд▓реЗрдЯ рдЬрд╕реНрддреИ рд╣рд╛рдд, рдбрд┐рдмреНрдм рдЧрд░реНрди рд╡рд╛ рдХреНрд╖реЗрддреНрд░, рдХрд╛рд░рдЦрд╛рдирд╛ рд╡рд╛ рд▓реНрдпрд╛рдмрдорд╛ Modbus TCP рд╕рдВрдЪрд╛рд░ рдореЛрдирд┐рдЯрд░ рдЧрд░реНрди рдЯреНрдпрд╛рдмреНрд▓реЗрдЯрдХреЛ рд░реВрдкрдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╣рд╛рддреИрд▓реЗ рдлреЗрд▓рд╛ рдкрд╛рд░реНрджрдЫред
рддрд░ рд▓рдЧрднрдЧ рд╕рдмреИ Modbus TCP рд╕рдВрдЪрд╛рд░ рдкреНрд░рдгрд╛рд▓реАрдХреЛ рдЖрдлреНрдиреИ рдбрд╛рдЯрд╛ рдврд╛рдБрдЪрд╛ рднрдпреЛред
рд╣реЗрдХреНрд╕ рдбрд╛рдЯрд╛рдХреЛ рд╕рдореБрджреНрд░рдорд╛ рдЦреЛрдЬреА рдЧрд░реНрджреИ рдЬрд╕реНрддреИ "режреи рдП b рдмреА ca рд╕реАрдП .... ff000803" рд░ рдХреЗ рд╣реБрдБрджреИрдЫ рднрдиреЗрд░ рдкрддреНрддрд╛ рд▓рдЧрд╛рдЙрди рдХреЛрд╕рд┐рд╕ рдЧрд░реНрдиреБ рдХреБрдиреИ рд░рдорд╛рдИрд▓реЛ рдЫреИрдиред
рддреНрдпрд╣рд┐ рд╣реЛ рдЬрд╣рд╛рдБ PyTool Modbus TCP рдорджреНрджрдд рдЧрд░реНрди рдЖрдЙрдБрдЫред
рдХрд╕реНрдЯрдо рдкрд╛рдЗрдерди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рдЙрди рд╕рдХреНрдиреЗ рдХреНрд╖рдорддрд╛рдХреЛ рд╕рд╛рде, рдкрд╛рдЗрдЯреБрд▓ рдореЛрдбрдмрд╕ рдЯреАрд╕реАрдкреАрд▓реЗ рдХреБрдиреИ рдкрдирд┐ рдкреНрд░рд╛рдкреНрдд рдбрд╛рдЯрд╛ рдкрдвреНрди рд╡рд╛ рдкрдвреНрди, рдпрд╕рд▓рд╛рдИ рддрдкрд╛рдЗрдБрд▓реЗ рдЪрд╛рд╣реЗрдХреЛ рддрд░рд┐рдХрд╛рдорд╛ рдкреНрд░рджрд░реНрд╢рди рдЧрд░реНрди, рд░ рдЖрд╡рд╢реНрдпрдХ рднрдПрдХреЛ рдмреЗрд▓рд╛рдорд╛ рдкрдирд┐ рдХрд╛рд░реНрдп рдЧрд░реНрди рд╕рдХреНрджрдЫред
рджреНрд░реБрдд рд╕реБрд░реВрдХреЛ рд▓рд╛рдЧрд┐ рддреНрдпрд╣рд╛рдБ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЙрджрд╛рд╣рд░рдгрд╣рд░реВ рдЫрдиреНред рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рдХреЛрд╕рд┐рд╕ рдЧрд░реНрдирдХрд╛ рд▓рд╛рдЧрд┐ рдХреЗрд╡рд▓ рдПрдЙрдЯрд╛ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдЧрд░реЗрд░ рдЯрд╛рдБрд╕реНрдиреБрд╣реЛрд╕реНред
рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рдпреЛрдЧрдХреЛ рд▓рд╛рдЧрд┐ рдПрдХ рдЙрдкрдпреЛрдЧреА Modbus TCP рдирд┐рдпрдиреНрддреНрд░рдг рдЗрдиреНрдЯрд░рдлреЗрд╕ рдкрдирд┐ рдЫред
рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рд╛рдорд╛рдиреНрдп рдЧрд╛рдЗрдб
==================
* рдпрд╕ рдЕрдиреБрдкреНрд░рдпреЛрдЧрдорд╛ рдкрд╛рдЗрдерди рд╕рдВрд╕реНрдХрд░рдг 3..8 рд╣реЛред
* рдпреЛ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдореНрдкрд╛рджрдХрдХреЛ рд░реВрдкрдорд╛ рдбрд┐рдЬрд╛рдЗрди рдЧрд░рд┐рдПрдХреЛ рдЫреИрди рдЬрдмрдХрд┐ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреНрд╖реЗрддреНрд░рдорд╛ рд╕рдореНрдкрд╛рджрди рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред
рдЙрддреНрддрдо рддрд░рд┐рдХрд╛ рднрдиреЗрдХреЛ рддрдкрд╛рдИрдВрдХреЛ рдордирдкрд░реНрдиреЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдореНрдкрд╛рджрдХ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реН рд░ рддреНрдпрд╕рдкрдЫрд┐ рд▓рд┐рдкрд┐рд▓рд╛рдИ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдЧрд░реЗрд░ рдЯрд╛рдБрд╕реНрдиреБрд╣реЛрд╕реНред
* рд╕рдзреИрдВ рдИрдиреНрдбреЗрдиреНрдЯреЗрд╢рдирдХреЛ рд▓рд╛рдЧрд┐ space рдЦрд╛рд▓реА рдард╛рдЙрдБрд╣рд░реВ рдЕрдиреМрдВрдареЛ рддреНрд░реБрдЯрд┐рд╣рд░реВ рд░реЛрдХреНрдирдХреЛ рд▓рд╛рдЧрд┐ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реНред
* рдорд╛рдирдХ рдкрд╛рдЗрдерди рдкреБрд╕реНрддрдХрд╛рд▓рдпрдорд╛ рдкреНрд░рд╛рдп: рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВ рдЖрдпрд╛рдд рдЧрд░реНрди рдЙрдкрд▓рдмреНрдз рдЫрдиреНред
* рдпрджрд┐ рд▓реВрдк рдЖрд╡рд╢реНрдпрдХ рднрдПрдорд╛, рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдареАрдХрд╕рдБрдЧ рд░реЛрдХреНрдирдХреЛ рд▓рд╛рдЧрд┐ рд╕рдБрдзреИ `app.running_script` рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реНред
* Version app.version` рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реН рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╕рдВрд╕реНрдХрд░рдг рд╕реНрдЯреНрд░рд┐ get рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдиред
* рд╕реНрдЯреНрд░рд┐рдкрдХреЛ рд░реВрдкрдорд╛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЖрдЙрдЯрдкреБрдЯ рдлрд┐рд▓реНрдб рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди `app.get_output () Use рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реНред
рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЖрдЙрдЯрдкреБрдЯ рдлрд┐рд▓реНрдбрдорд╛ рд╕реНрдЯреНрд░рд┐ asрдХреЛ рд░реВрдкрдорд╛ рдкреНрд░рджрд░реНрд╢рди рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ display app.set_output (рд╡рд╕реНрддреБ) `рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реНред
* рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЖрдЙрдЯрдкреБрдЯ рдлрд┐рд▓реНрдбрдорд╛ рдкрд╛рда рдердкреНрди `app.set_output (app.get_output () + str (рд╡рд╕реНрддреБ)) a рдХреЛ рд▓рд╛рдЧрд┐ рд╕рд░реНрдЯрдХрдЯрдХреЛ рд░реВрдкрдорд╛` app.print_text (рд╡рд╕реНрддреБ) рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реНред
* рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЖрдЙрдЯрдкреБрдЯ рдлрд┐рд▓реНрдб рдЦрд╛рд▓реА рдЧрд░реНрди `app.set_output (" ") for рдХреЛ рд▓рд╛рдЧрд┐ рд╕рд░реНрдЯрдХрдЯрдХреЛ рд░реВрдкрдорд╛` app.clear_text () Use рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реНред
* рдкреНрд░рдХрд╛рд░реНрдп рдХреЛрдб режреж рдЕрдиреБрд░реЛрдз рдкрдард╛рдЙрди `app.fc01_read_coils (mbid, addr, num) Use рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реНред
mbid (int): Modbus ID
addr (int): рдбрд╛рдЯрд╛ рдареЗрдЧрд╛рдирд╛
num (int): рдбрд╛рдЯрд╛рдХреЛ рд╕рдВрдЦреНрдпрд╛
рд░рд┐рдЯрд░реНрди (int рдХреЛ рд╕реВрдЪреА): рдЕрдиреБрд░реЛрдз рдЧрд░рд┐рдПрдХреЛ рдбрд╛рдЯрд╛ рд╕реВрдЪреА
* рдкреНрд░рдХрд╛рд░реНрдп рдХреЛрдб режреж рдЕрдиреБрд░реЛрдз рдкрдард╛рдЙрди read app.fc02_read_discrete_inputs (mbid, addr, num) Use рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реНред
mbid (int): Modbus ID
addr (int): рдбрд╛рдЯрд╛ рдареЗрдЧрд╛рдирд╛
num (int): рдбрд╛рдЯрд╛рдХреЛ рд╕рдВрдЦреНрдпрд╛
рд░рд┐рдЯрд░реНрди (int рдХреЛ рд╕реВрдЪреА): рдЕрдиреБрд░реЛрдз рдЧрд░рд┐рдПрдХреЛ рдбрд╛рдЯрд╛ рд╕реВрдЪреА
* рдкреНрд░рдХрд╛рд░реНрдп рдХреЛрдб реж request рдЕрдиреБрд░реЛрдз рдкрдард╛рдЙрди `app.fc03_read_holding_register (mbid, addr, num) Use рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реНред
mbid (int): Modbus ID
addr (int): рдбрд╛рдЯрд╛ рдареЗрдЧрд╛рдирд╛
num (int): рдбрд╛рдЯрд╛рдХреЛ рд╕рдВрдЦреНрдпрд╛
рд░рд┐рдЯрд░реНрди (int рдХреЛ рд╕реВрдЪреА): рдЕрдиреБрд░реЛрдз рдЧрд░рд┐рдПрдХреЛ рдбрд╛рдЯрд╛ рд╕реВрдЪреА
* рдкреНрд░рдХрд╛рд░реНрдп рдХреЛрдб реж request рдЕрдиреБрд░реЛрдз рдкрдард╛рдЙрди read app.fc04_read_input_register (mbid, addr, num) Use рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реНред
mbid (int): Modbus ID
addr (int): рдбрд╛рдЯрд╛ рдареЗрдЧрд╛рдирд╛
num (int): рдбрд╛рдЯрд╛рдХреЛ рд╕рдВрдЦреНрдпрд╛
рд░рд┐рдЯрд░реНрди (int рдХреЛ рд╕реВрдЪреА): рдЕрдиреБрд░реЛрдз рдЧрд░рд┐рдПрдХреЛ рдбрд╛рдЯрд╛ рд╕реВрдЪреА
* рдкреНрд░рдХрд╛рд░реНрдп рдХреЛрдб реж request рдЕрдиреБрд░реЛрдз рдкрдард╛рдЙрди `app.fc05_write_single_coil (mbid, addr, val) Use рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реНред
mbid (int): Modbus ID
addr (int): рдбрд╛рдЯрд╛ рдареЗрдЧрд╛рдирд╛
val (int): рдбрд╛рдЯрд╛ рдорд╛рди
рд░рд┐рдЯрд░реНрди (int): рдбрд╛рдЯрд╛ рдХреЛ рд╕рдВрдЦреНрдпрд╛ (рд╕рдзреИрдВ рез)
* рдкреНрд░рдХрд╛рд░реНрдп рдХреЛрдб реж request рдЕрдиреБрд░реЛрдз рдкрдард╛рдЙрди `app.fc06_writ_single_register (mbid, addr, val) Use рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реНред
mbid (int): Modbus ID
addr (int): рдбрд╛рдЯрд╛ рдареЗрдЧрд╛рдирд╛
val (int): рдбрд╛рдЯрд╛ рдорд╛рди
рд░рд┐рдЯрд░реНрди (int): рдбрд╛рдЯрд╛ рдХреЛ рд╕рдВрдЦреНрдпрд╛ (рд╕рдзреИрдВ рез)
* рдкреНрд░рдХрд╛рд░реНрдп рдХреЛрдб рез request рдЕрдиреБрд░реЛрдз рдкрдард╛рдЙрди `app.fc15_writ_m Multiple_coils (mbid, addr, vals) Use рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реНред
mbid (int): Modbus ID
addr (int): рдбрд╛рдЯрд╛ рдареЗрдЧрд╛рдирд╛
vals (int рдХреЛ рд╕реВрдЪреА): рдбрд╛рдЯрд╛ рдорд╛рди рд╕реВрдЪреА
рд░рд┐рдЯрд░реНрди (int): рдбрд╛рдЯрд╛рдХреЛ рд╕рдВрдЦреНрдпрд╛
* рдкреНрд░рдХрд╛рд░реНрдп рдХреЛрдб рез request рдЕрдиреБрд░реЛрдз рдкрдард╛рдЙрди _ app.fc16_writ_m Multiple_register (mbid, addr, vals) Use рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реНред
mbid (int): Modbus ID
addr (int): рдбрд╛рдЯрд╛ рдареЗрдЧрд╛рдирд╛
vals (int рдХреЛ рд╕реВрдЪреА): рдбрд╛рдЯрд╛ рдорд╛рди рд╕реВрдЪреА
рд░рд┐рдЯрд░реНрди (int): рдбрд╛рдЯрд╛рдХреЛ рд╕рдВрдЦреНрдпрд╛
рдЕрдиреБрд░реЛрдз рд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕рдиреНрджреЗрд╢рд╣рд░реВ рдЬрд╛рдБрдЪ рдЧрд░реНрди *ред App.msg_out` рд░ `app.msg_in` рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реНред
* рднрдгреНрдбрд╛рд░рдгрдорд╛ рд▓рдЧ рдлрд╛рдЗрд▓ рдмрдЪрдд рдЧрд░реНрди `app.log_file (рдкрд╛рда) Use рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реНред
рд▓рдЧ рдлрд╛рдЗрд▓ рдпрд╣рд╛рдБ рдЕрд╡рд╕реНрдерд┐рдд рдЫ [рднрдгреНрдбрд╛рд░рдг рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛] / PyToolModbusTCP / log_ [UTC рдЯрд╛рдЗрдорд╕реНрдЯреНрдпрд╛рдореНрдк] .txtред
рдкрд╛рда (str): рдкрд╛рда рд╕рд╛рдордЧреНрд░реА
рдлрд┐рд░реНрддреА (str): рдкреВрд░реНрдг рдлрд╛рдИрд▓ рдкрде
рдорд╛ рдЕрдкрдбреЗрдЯ рдЧрд░рд┐рдПрдХреЛ
реирежреирез рдЬреБрд▓рд╛рдИ рем