PyTool Modbus - Modbusту иштеп чыгуу, мүчүлүштүктөрдү оңдоо жана көзөмөлдөө үчүн мыкты курал.
Ал сизге эң чоң ийкемдүүлүктү берген Python скрипт мүмкүнчүлүгүн камтыйт.
Эмне үчүн скрипт мүмкүнчүлүгү Modbus куралы үчүн керек?
Электр инженерлери Android телефону же планшети сыяктуу түзмөктү талаада, фабрикада же лабораторияда Modbus байланышын оңдоо же көзөмөлдөө үчүн колдонууну пайдалуу деп эсептешет.
Бирок Modbus баардык байланыш тутумдары өзүнүн маалымат форматына ээ болушкан.
"02a5b4ca .... ff000803" сыяктуу алты бурчтуу маалыматтардын деңизинде издөө жана эмне болуп жаткандыгын билүүгө аракет кылуу жагымдуу эмес.
Бул жерде PyTool Modbus жардамга келет.
Ылайыкташтырылган Python скриптин иштетүү мүмкүнчүлүгү менен, PyTool Modbus алынган бардык маалыматтарды окуп, талдай алат, аларды сиз каалагандай кылып көрсөтөт жана керек болгондо ошого жараша иш алып барат.
Тез баштоо үчүн сценарийдин мисалдары бар. Аларды сынап көрүү үчүн алардын бирин көчүрүп, чаптап коюңуз.
Жалпы пайдалануу үчүн ыңгайлуу Modbus башкаруу интерфейси да бар.
Бул негизги агым USB сериялык драйверлерин колдойт, анын ичинде:
FTDI айдоочусу
CDC ACM драйвери
CP210x драйвери
CH34x драйвери
PL2303 драйвери
Сценарий боюнча жалпы колдонмо
==================
* Бул колдонмодо колдонулган Python версиясы 3.8.
* Бул колдонмо скрипт редактору катары иштелип чыккан эмес, бирок сценарийди скрипт талаасында түзөтсө болот.
Эң жакшы жолу - сүйүктүү сценарий редакторуңузду колдонуп, андан кийин сценарийди көчүрүп, чаптоо.
* Таң калыштуу каталарды кетирбөө үчүн ар дайым 4 аралыгын чегинүү үчүн колдонуңуз.
* Python стандарттык китепканасындагы пакеттердин көпчүлүгүн импорттоого болот.
* If while цикл керек болсо, сценарийди туура токтотуу үчүн ар дайым 'app.running_script'ти шарт катары колдонуңуз.
* Колдонмонун версия сабын алуу үчүн `app.version` колдонуңуз.
* "App.get_output ()" колдонуп, скрипт чыккан жерди сап катарында алыңыз.
* Сценарийдин чыгуучу талаасында "объектти" сап катары көрсөтүү үчүн "app.set_output (object)" колдонуңуз.
* Текстти скрипт чыгаруу талаасына кошуу үчүн "app.print_text (object)" колдонмосун "app.set_output (app.get_output () + str (object))" үчүн жарлык катары колдонуңуз.
* Скрипттин чыгуу талаасын тазалоо үчүн `app.clear_text ()` колдонмосун `app.set_output (" ")" үчүн жарлык катары колдонуңуз.
* Функция коду 01 сурам жөнөтүү үчүн `app.fc01_read_coils (mbid, addr, num) 'колдонуңуз.
mbid (int): Modbus ID
addr (int): Маалымат дареги
num (int): Маалыматтардын саны
return (int тизмеси): Суралган маалыматтар тизмеси
* Функция коду 02 сурам жөнөтүү үчүн `app.fc02_read_discrete_inputs (mbid, addr, num) 'колдонуңуз.
mbid (int): Modbus ID
addr (int): Маалымат дареги
num (int): Маалыматтардын саны
return (int тизмеси): Суралган маалыматтар тизмеси
* Функция коду 03 сурам жөнөтүү үчүн `app.fc03_read_holding_registers (mbid, addr, num) 'колдонуңуз.
mbid (int): Modbus ID
addr (int): Маалымат дареги
num (int): Маалыматтардын саны
return (int тизмеси): Суралган маалыматтар тизмеси
* Функционалдык код 04 сурам жөнөтүү үчүн `app.fc04_read_input_registers (mbid, addr, num) 'колдонуңуз.
mbid (int): Modbus ID
addr (int): Маалымат дареги
num (int): Маалыматтардын саны
return (int тизмеси): Суралган маалыматтар тизмеси
* Функция коду 05 сурам жөнөтүү үчүн `app.fc05_write_single_coil (mbid, addr, val) 'колдонуңуз.
mbid (int): Modbus ID
addr (int): Маалымат дареги
val (int): Маалымат мааниси
return (int): Маалыматтардын саны (ар дайым 1)
* Функция коду 06 сурам жөнөтүү үчүн `app.fc06_write_single_register (mbid, addr, val) 'колдонуңуз.
mbid (int): Modbus ID
addr (int): Маалымат дареги
val (int): Маалымат мааниси
return (int): Маалыматтардын саны (ар дайым 1)
* Функция коду 15 сурам жөнөтүү үчүн `app.fc15_write_multiple_coils (mbid, addr, vals) 'колдонуңуз.
mbid (int): Modbus ID
addr (int): Маалымат дареги
vals (int тизмеси): Маалыматтардын тизмеси
return (int): Маалыматтардын саны
* Функция коду 16 сурам жөнөтүү үчүн `app.fc16_write_multiple_registers (mbid, addr, vals) 'колдонуңуз.
mbid (int): Modbus ID
addr (int): Маалымат дареги
vals (int тизмеси): Маалыматтардын тизмеси
return (int): Маалыматтардын саны
* Суроо жана жооп билдирүүлөрүн текшерүү үчүн `app.msg_out` жана` app.msg_in` колдонуңуз.
* Журнал файлын сактагычта сактоо үчүн `app.log_file (text)" колдонуңуз.
Журнал файлы бул жерде жайгашкан [Сактагычтар каталогу] / PyToolModbus / log_ [UTC Timestamp] .txt.
текст (str): Тексттин мазмуну
return (str): Файлдын толук жолу
Качан жаңырды
2021-ж., 5-июл.