PyTool Modbus

10+
เบ”เบฒเบงเป‚เบซเบผเบ”
เบ›เบฐเป€เบžเบ”เป€เบ™เบทเป‰เบญเบซเบฒ
เบ—เบธเบเบ„เบปเบ™
เบฎเบนเบšเปœเป‰เบฒเบˆเป
เบฎเบนเบšเปœเป‰เบฒเบˆเป
เบฎเบนเบšเปœเป‰เบฒเบˆเป
เบฎเบนเบšเปœเป‰เบฒเบˆเป
เบฎเบนเบšเปœเป‰เบฒเบˆเป
เบฎเบนเบšเปœเป‰เบฒเบˆเป
เบฎเบนเบšเปœเป‰เบฒเบˆเป
เบฎเบนเบšเปœเป‰เบฒเบˆเป
เบฎเบนเบšเปœเป‰เบฒเบˆเป
เบฎเบนเบšเปœเป‰เบฒเบˆเป
เบฎเบนเบšเปœเป‰เบฒเบˆเป
เบฎเบนเบšเปœเป‰เบฒเบˆเป
เบฎเบนเบšเปœเป‰เบฒเบˆเป
เบฎเบนเบšเปœเป‰เบฒเบˆเป
เบฎเบนเบšเปœเป‰เบฒเบˆเป
เบฎเบนเบšเปœเป‰เบฒเบˆเป
เบฎเบนเบšเปœเป‰เบฒเบˆเป
เบฎเบนเบšเปœเป‰เบฒเบˆเป
เบฎเบนเบšเปœเป‰เบฒเบˆเป
เบฎเบนเบšเปœเป‰เบฒเบˆเป
เบฎเบนเบšเปœเป‰เบฒเบˆเป
เบฎเบนเบšเปœเป‰เบฒเบˆเป
เบฎเบนเบšเปœเป‰เบฒเบˆเป
เบฎเบนเบšเปœเป‰เบฒเบˆเป

เบเปˆเบฝเบงเบเบฑเบšเปเบญเบฑเบšเบ™เบตเป‰

PyTool Modbus เปเบกเปˆเบ™เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ—เบตเปˆเบ”เบต เบชเบณ เบฅเบฑเบšเบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒ, เปเบเป‰เป„เบ‚เปเบฅเบฐเบ•เบดเบ”เบ•เบฒเบกเบเบงเบ”เบเบฒ.
เบกเบฑเบ™เบกเบตเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เบ‚เบฝเบ™ Python เบ—เบตเปˆเบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบกเบตเบ„เบงเบฒเบกเบเบทเบ”เบซเบเบธเปˆเบ™เบชเบนเบ‡เบชเบธเบ”.

เป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบ‚เบฝเบ™เปเบกเปˆเบ™เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เบกเบท Modbus?
เบ™เบฑเบเบงเบดเบชเบฐเบงเบฐเบเบญเบ™เป„เบŸเบŸเป‰เบฒเป€เบซเบฑเบ™เบงเปˆเบฒเบเบฒเบ™เปƒเบŠเป‰เบกเบทเบ–เบทเบ„เป‰เบฒเบเบ„เบทเป‚เบ—เบฅเบฐเบชเบฑเบšเบซเบฅเบทเปเบ—เบฑเบšเป€เบฅเบฑเบ” Android เป€เบžเบทเปˆเบญเปเบเป‰เป„เบ‚เบซเบฅเบทเบ•เบดเบ”เบ•เบฒเบกเบเบฒเบ™เบชเบทเปˆเบชเบฒเบ™ Modbus เปƒเบ™เบชเบฐ เปœเบฒเบก, เป‚เบฎเบ‡เบ‡เบฒเบ™เบซเบฅเบทเบซเป‰เบญเบ‡เบ—เบปเบ”เบฅเบญเบ‡.
เปเบ•เปˆเป€เบเบทเบญเบšเบ—เบธเบเป†เบฅเบฐเบšเบปเบšเบเบฒเบ™เบชเบทเปˆเบชเบฒเบ™เบ‚เบญเบ‡ Modbus เบกเบตเบฎเบนเบšเปเบšเบšเบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบ•เบปเบ™เป€เบญเบ‡.
เบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒเปƒเบ™เบ—เบฐเป€เบฅเบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™ hex เป€เบŠเบฑเปˆเบ™ "02a5b4ca .... ff000803" เปเบฅเบฐเบเบฒเบ™เบžเบฐเบเบฒเบเบฒเบกเบ„เบปเป‰เบ™เบซเบฒเบชเบดเปˆเบ‡เบ—เบตเปˆ เบเบณ เบฅเบฑเบ‡เป€เบเบตเบ”เบ‚เบทเป‰เบ™เบเปเปˆเบšเปเปˆเปเบกเปˆเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆ เปœเป‰เบฒ เบเบดเบ™เบ”เบตเป€เบฅเบตเบ.
เบ™เบฑเป‰เบ™เปเบกเปˆเบ™เบšเปˆเบญเบ™เบ—เบตเปˆ PyTool Modbus เบกเบฒเบŠเปˆเบงเบเป€เบซเบผเบทเบญ.
เบ”เป‰เบงเบเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเปเบšเบš Python เปเบšเบš custom, PyTool Modbus เบชเบฒเบกเบฒเบ”เบญเปˆเบฒเบ™เปเบฅเบฐเปเบเบเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเป„เบ”เป‰เบฎเบฑเบš, เบชเบฐเปเบ”เบ‡เปƒเบ™เปเบšเบšเบ—เบตเปˆเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™, เปเบฅเบฐเปเบกเป‰เบเบฐเบ—เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบฒเบกเบ„เบงเบฒเบก เบˆเบณ เป€เบ›เบฑเบ™เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆ เบˆเบณ เป€เบ›เบฑเบ™.

เบกเบตเบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบฝเบ™ เบชเบณ เบฅเบฑเบšเบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป„เบง. เบžเบฝเบ‡เปเบ•เปˆเบ„เบฑเบ”เบฅเบญเบเปเบฅเบฐเบงเบฒเบ‡ เปœเบถเปˆเบ‡ เปƒเบ™เบ™เบฑเป‰เบ™เป€เบžเบทเปˆเบญเบ—เบปเบ”เบฅเบญเบ‡เปƒเบŠเป‰.

เบ™เบญเบเบ™เบฑเป‰เบ™เบเบฑเบ‡เบกเบตเบญเบดเบ™เป€เบ•เบตเป€เบŸเบ”เบ„เบงเบšเบ„เบธเบกเบ—เบตเปˆเบกเบตเบ›เบฐเป‚เบซเบเบ” เบชเบณ เบฅเบฑเบš Modbus เบชเบณ เบฅเบฑเบšเบเบฒเบ™ เบ™เบณ เปƒเบŠเป‰เบ—เบปเปˆเบงเป„เบ›.

เบกเบฑเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบเบฒเบ™เบ‚เบฑเบš USB serial เบชเบฒเบเบ™เป‰เปเบ•เบปเป‰เบ™เบ•เป, เบฅเบงเบกเบ—เบฑเบ‡:
เบ„เบปเบ™เบ‚เบฑเบšเบฅเบปเบ” FTDI
เบ„เบปเบ™เบ‚เบฑเบš CDC ACM
เบ„เบปเบ™เบ‚เบฑเบš CP210x
เบ„เบปเบ™เบ‚เบฑเบš CH34x
เบ„เบปเบ™เบ‚เบฑเบš PL2303

เบ›เบทเป‰เบกเบ„เบนเปˆเบกเบทเบ—เบปเปˆเบงเป„เบ› Script
=================

* เบฅเบธเป‰เบ™ Python เบ—เบตเปˆเปƒเบŠเป‰เปƒเบ™เปเบญเบฑเบšเบ™เบตเป‰เปเบกเปˆเบ™ 3.8.

* เปเบญเบฑเบš This เบ™เบตเป‰เบšเปเปˆเป„เบ”เป‰เบ–เบทเบเบญเบญเบเปเบšเบšเบกเบฒเป€เบ›เบฑเบ™เบšเบฑเบ™เบ™เบฒเบ—เบดเบเบฒเบ™เบ•เบปเบง เปœเบฑเบ‡ เบชเบทเป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบญเบฑเบเบชเบญเบ™เบชเบฒเบกเบฒเบ”เปเบเป‰เป„เบ‚เป„เบ”เป‰เปƒเบ™เบžเบฒเบเบชเบฐ เปœเบฒเบก เบชเบฐเบ„เบดเบš.
เบงเบดเบ—เบตเบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”เปเบกเปˆเบ™เปƒเบŠเป‰เบ•เบปเบงเปเบเป‰เป„เบ‚เบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ—เบตเปˆเบ—เปˆเบฒเบ™เบกเบฑเบเปเบฅเบฐเบˆเบฒเบเบ™เบฑเป‰เบ™เบ„เบฑเบ”เบฅเบญเบเปเบฅเบฐเบงเบฒเบ‡เบชเบฐเบ„เบดเบš.

* เปƒเบŠเป‰เบชเบฐเบ–เบฒเบ™เบ—เบตเปˆ 4 เบŠเปˆเบญเบ‡เบขเบนเปˆเบชเบฐ เป€เปเบต เป€เบžเบทเปˆเบญเบซเบฅเบตเบเบฅเป‰เบฝเบ‡เบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เบ—เบตเปˆเปเบ›เบ.

* เปเบžเบฑเบเป€เบเบ”เบชเปˆเบงเบ™เปƒเบซเบเปˆเปƒเบ™เบซเป‰เบญเบ‡เบชเบฐเบกเบธเบ” Python เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบชเบฒเบกเบฒเบ” เบ™เบณ เป€เบ‚เบปเป‰เบฒเป„เบ”เป‰.

* เบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒเปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆ loop เปเบกเปˆเบ™เบกเบตเบ„เบงเบฒเบก เบˆเบณ เป€เบ›เบฑเบ™, เปƒเบซเป‰เปƒเบŠเป‰ `app.running_script` เบ•เบฒเบกเป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เบชเบฐ เป€เปเบต เป€เบžเบทเปˆเบญเบขเบธเบ”เบชเบฐเบ„เบฃเบดเบšเปƒเบซเป‰เบ–เบทเบเบ•เป‰เบญเบ‡.

* เปƒเบŠเป‰ `app.version` เป€เบžเบทเปˆเบญเป€เบญเบปเบฒเบชเบฐเบšเบฑเบš app.

* เปƒเบŠเป‰ `app.get_output ()` เป€เบžเบทเปˆเบญเปƒเบซเป‰เป„เบ”เป‰เบžเบฒเบเบชเบฐ เปœเบฒเบก เบชเบฐเปเบ”เบ‡เบœเบปเบ™เป€เบ›เบฑเบ™เบ•เบปเบงเบญเบฑเบเบชเบญเบ™.

* เปƒเบŠเป‰ `app.set_output (object)` เป€เบžเบทเปˆเบญเบชเบฐเปเบ”เบ‡ `object` เปƒเบ™เบžเบฒเบเบชเบฐ เปœเบฒเบก output script เป€เบ›เบฑเบ™ string.

* เปƒเบŠเป‰ `app.print_text (object)` เป€เบ›เบฑเบ™เบ—เบฒเบ‡เบฅเบฑเบ” เบชเบณ เบฅเบฑเบš `app.set_output (app.get_output () + str (object))` เป€เบžเปˆเบทเบญเป€เบžเบตเปˆเบกเป€เบ•เบตเบกเบ‚เปเป‰เบ„เบงเบฒเบกเปƒเบชเปˆเบžเบฒเบเบชเบฐ เปœเบฒเบก เบœเบปเบ™เบœเบฐเบฅเบดเบ”เบชเบฐเบ„เบดเบš.

* เปƒเบŠเป‰ `app.clear_text ()` เป€เบ›เบฑเบ™เบ—เบฒเบ‡เบฅเบฑเบ” เบชเบณ เบฅเบฑเบš `app.set_output (" ")` เป€เบžเบทเปˆเบญเบญเบฐเบ™เบฒเป„เบกเบžเบฒเบเบชเบฐ เปœเบฒเบก เบœเบปเบ™เบœเบฐเบฅเบดเบ”เบชเบฐเบ„เบดเบš.

* เปƒเบŠเป‰ `app.fc01_read_coils (mbid, addr, num)` เป€เบžเบทเปˆเบญเบชเบปเปˆเบ‡เบฅเบฐเบซเบฑเบ”เบŸเบฑเบ‡เบŠเบฑเบ™ 01 เบ„เบณ เบฎเป‰เบญเบ‡เบ‚เป.
mbid (int): ID Modbus
addr (int): เบ—เบตเปˆเบขเบนเปˆเบ‚เปเป‰เบกเบนเบ™
num (int): เบˆเบณ เบ™เบงเบ™เบ‚เปเป‰เบกเบนเบ™
เบเบฑเบšเบ„เบทเบ™ (เบšเบฑเบ™เบŠเบตเบ‚เบญเบ‡ int): เบฅเบฒเบเบŠเบทเปˆเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบ–เบทเบเบฎเป‰เบญเบ‡เบ‚เป

* เปƒเบŠเป‰ `app.fc02_read_discrete_inputs (mbid, addr, num)` เป€เบžเบทเปˆเบญเบชเบปเปˆเบ‡เบฅเบฐเบซเบฑเบ”เบŸเบฑเบ‡เบŠเบฑเบ™ 02 เบ„เบณ เบ‚เป.
mbid (int): ID Modbus
addr (int): เบ—เบตเปˆเบขเบนเปˆเบ‚เปเป‰เบกเบนเบ™
num (int): เบˆเบณ เบ™เบงเบ™เบ‚เปเป‰เบกเบนเบ™
เบเบฑเบšเบ„เบทเบ™ (เบšเบฑเบ™เบŠเบตเบ‚เบญเบ‡ int): เบฅเบฒเบเบŠเบทเปˆเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบ–เบทเบเบฎเป‰เบญเบ‡เบ‚เป

* เปƒเบŠเป‰ `app.fc03_read_holding_registers (mbid, addr, num)` เป€เบžเบทเปˆเบญเบชเบปเปˆเบ‡เบฅเบฐเบซเบฑเบ”เบŸเบฑเบ‡เบŠเบฑเบ™ 03 เบ„เบณ เบ‚เป.
mbid (int): ID Modbus
addr (int): เบ—เบตเปˆเบขเบนเปˆเบ‚เปเป‰เบกเบนเบ™
num (int): เบˆเบณ เบ™เบงเบ™เบ‚เปเป‰เบกเบนเบ™
เบเบฑเบšเบ„เบทเบ™ (เบšเบฑเบ™เบŠเบตเบ‚เบญเบ‡ int): เบฅเบฒเบเบŠเบทเปˆเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบ–เบทเบเบฎเป‰เบญเบ‡เบ‚เป

* เปƒเบŠเป‰ `app.fc04_read_input_registers (mbid, addr, num)` เป€เบžเบทเปˆเบญเบชเบปเปˆเบ‡เบฅเบฐเบซเบฑเบ”เบŸเบฑเบ‡เบŠเบฑเบ™ 04 เบ„เบณ เบฎเป‰เบญเบ‡เบ‚เป.
mbid (int): ID Modbus
addr (int): เบ—เบตเปˆเบขเบนเปˆเบ‚เปเป‰เบกเบนเบ™
num (int): เบˆเบณ เบ™เบงเบ™เบ‚เปเป‰เบกเบนเบ™
เบเบฑเบšเบ„เบทเบ™ (เบšเบฑเบ™เบŠเบตเบ‚เบญเบ‡ int): เบฅเบฒเบเบŠเบทเปˆเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบ–เบทเบเบฎเป‰เบญเบ‡เบ‚เป

* เปƒเบŠเป‰ `app.fc05_write_single_coil (mbid, addr, val)` เป€เบžเบทเปˆเบญเบชเบปเปˆเบ‡เบฅเบฐเบซเบฑเบ”เบŸเบฑเบ‡เบŠเบฑเบ™ 05 เบ„เบณ เบ‚เป.
mbid (int): ID Modbus
addr (int): เบ—เบตเปˆเบขเบนเปˆเบ‚เปเป‰เบกเบนเบ™
val (int): เบกเบนเบ™เบ„เปˆเบฒเบ‚เปเป‰เบกเบนเบ™
เบเบฑเบšเบ„เบทเบ™ (int): เบˆเบณ เบ™เบงเบ™เบ‚เปเป‰เบกเบนเบ™ (เบชเบฐเป€เบซเบกเบต 1)

* เปƒเบŠเป‰ `app.fc06_write_single_register (mbid, addr, val)` เป€เบžเบทเปˆเบญเบชเบปเปˆเบ‡เบฅเบฐเบซเบฑเบ”เบŸเบฑเบ‡เบŠเบฑเบ™ 06 เบ„เบณ เบ‚เป.
mbid (int): ID Modbus
addr (int): เบ—เบตเปˆเบขเบนเปˆเบ‚เปเป‰เบกเบนเบ™
val (int): เบกเบนเบ™เบ„เปˆเบฒเบ‚เปเป‰เบกเบนเบ™
เบเบฑเบšเบ„เบทเบ™ (int): เบˆเบณ เบ™เบงเบ™เบ‚เปเป‰เบกเบนเบ™ (เบชเบฐเป€เบซเบกเบต 1)

* เปƒเบŠเป‰ `app.fc15_write_multiple_coils (mbid, addr, vals)` เป€เบžเบทเปˆเบญเบชเบปเปˆเบ‡เบฅเบฐเบซเบฑเบ”เบŸเบฑเบ‡เบŠเบฑเบ™ 15 เบ‚เปเป‰.
mbid (int): ID Modbus
addr (int): เบ—เบตเปˆเบขเบนเปˆเบ‚เปเป‰เบกเบนเบ™
vals (list of int): เบšเบฑเบ™เบŠเบตเบกเบนเบ™เบ„เปˆเบฒเบ‚เปเป‰เบกเบนเบ™
เบเบฑเบšเบ„เบทเบ™ (int): เบˆเบณ เบ™เบงเบ™เบ‚เปเป‰เบกเบนเบ™

* เปƒเบŠเป‰ `app.fc16_write_multiple_registers (mbid, addr, vals)` เป€เบžเบทเปˆเบญเบชเบปเปˆเบ‡เบฅเบฐเบซเบฑเบ”เบŸเบฑเบ‡เบŠเบฑเบ™ 16 เบ„เบณ เบ‚เป.
mbid (int): ID Modbus
addr (int): เบ—เบตเปˆเบขเบนเปˆเบ‚เปเป‰เบกเบนเบ™
vals (list of int): เบšเบฑเบ™เบŠเบตเบกเบนเบ™เบ„เปˆเบฒเบ‚เปเป‰เบกเบนเบ™
เบเบฑเบšเบ„เบทเบ™ (int): เบˆเบณ เบ™เบงเบ™เบ‚เปเป‰เบกเบนเบ™

* เปƒเบŠเป‰ `app.msg_out` เปเบฅเบฐ` app.msg_in` เป€เบžเบทเปˆเบญเบเบงเบ”เบชเบญเบšเบ‚เปเป‰เบ„เบงเบฒเบกเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเปเบฅเบฐเบ•เบญเบš.

* เปƒเบŠเป‰ `app.log_file (เบ‚เปเป‰เบ„เบงเบฒเบก)` เป€เบžเบทเปˆเบญเบšเบฑเบ™เบ—เบถเบเป€เบญเบเบฐเบชเบฒเบ™เบšเบฑเบ™เบ—เบถเบเป„เบงเป‰เปƒเบ™เบšเปˆเบญเบ™เป€เบเบฑเบšเบ‚เปเป‰เบกเบนเบ™.
เป€เบญเบเบฐเบชเบฒเบ™เบšเบฑเบ™เบ—เบถเบเบขเบนเปˆเบ—เบตเปˆเบ™เบตเป‰ [Directory Storage] / PyToolModbus / log_ [UTC Timestamp] .txt.
text (str): เป€เบ™เบทเป‰เบญเบซเบฒเบ•เบปเบง เปœเบฑเบ‡ เบชเบท
เบเบฑเบšเบ„เบทเบ™ (str): เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เป€เบ•เบฑเบกเบ‚เบญเบ‡เป€เบญเบเบฐเบชเบฒเบ™
เบญเบฑเบšเป€เบ”เบ”เปเบฅเป‰เบงเป€เบกเบทเปˆเบญ
5 เบ.เบฅ. 2021

เบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™

เบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเป€เบฅเบตเปˆเบกเบ”เป‰เบงเบเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเปƒเบˆเบงเปˆเบฒเบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเป€เบเบฑเบšเบเบณ เปเบฅเบฐ เปเบšเปˆเบ‡เบ›เบฑเบ™เบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เปเบ™เบงเปƒเบ”. เบงเบดเบ—เบตเบ›เบฐเบ•เบดเบšเบฑเบ”เบเปˆเบฝเบงเบเบฑเบšเบ„เบงเบฒเบกเป€เบ›เบฑเบ™เบชเปˆเบงเบ™เบ•เบปเบง เปเบฅเบฐ เบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบญเบฒเบ”เบˆเบฐเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบญเบตเบ‡เบ•เบฒเบกเบเบฒเบ™เบ™เบณเปƒเบŠเป‰, เบžเบฒเบเบžเบทเป‰เบ™ เปเบฅเบฐ เบญเบฒเบเบธเบ‚เบญเบ‡เบ—เปˆเบฒเบ™. เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเปƒเบซเป‰เบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰ เปเบฅเบฐ เบญเบฒเบ”เบˆเบฐเบญเบฑเบšเป€เบ”เบ”เบกเบฑเบ™เป€เบกเบทเปˆเบญเป€เบงเบฅเบฒเบœเปˆเบฒเบ™เป„เบ›.
เบšเปเปˆเป„เบ”เป‰เป„เบ”เป‰เปเบšเปˆเบ‡เบ›เบฑเบ™เบ‚เปเป‰เบกเบนเบ™เบเบฑเบšเบžเบฒเบเบชเปˆเบงเบ™เบ—เบตเบชเบฒเบก
เบชเบถเบเบชเบฒเป€เบžเบตเปˆเบกเป€เบ•เบตเบก เบเปˆเบฝเบงเบเบฑเบšเบงเปˆเบฒเบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเบ›เบฐเบเบฒเบ”เบเบฒเบ™เปเบšเปˆเบ‡เบ›เบฑเบ™เบ‚เปเป‰เบกเบนเบ™เปเบ™เบงเปƒเบ”
เบšเปเปˆเป„เบ”เป‰เป€เบเบฑเบšเบเบณเบ‚เปเป‰เบกเบนเบ™
เบชเบถเบเบชเบฒเป€เบžเบตเปˆเบกเป€เบ•เบตเบก เบเปˆเบฝเบงเบเบฑเบšเบงเปˆเบฒเบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเบ›เบฐเบเบฒเบ”เบเบฒเบ™เป€เบเบฑเบšเบเบณเบ‚เปเป‰เบกเบนเบ™เปเบ™เบงเปƒเบ”

เบกเบตเบซเบเบฑเบ‡เปƒเปเปˆ

Version 0.3
Python version for the script is 3.8.
Now the script runs in Python global environment. Existing scripts should still work as before.
`app.version` is added for checking app version.

เบเปˆเบฒเบเบŠเปˆเบงเบเป€เบซเบผเบทเบญเบ‚เบญเบ‡เปเบญเบฑเบš

เบเปˆเบฝเบงเบเบฑเบšเบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเปเบญเบฑเบš
Quan Lin
jacklinquan@gmail.com
190 Centre Dandenong Rd Cheltenham VIC 3192 Australia
undefined

เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเปเบเบเบ•เบฒเบก Quan Lin