Modbus TCP/UDP Client
inSCADA Modbus Client
1) Kurulum
1.1) Windows İçin Kurulum
Modbus Client uygulaması click-to-run olarak tasarlanmıştır. Uygulamayı bilgisayara indirdikten sonra ins-mod-cli.exe 'yi çalıştırarak direkt kullanmaya başlayabilirsiniz.
1.2) Ubuntu İçin Kurulum
Modbus Client uygulaması Ubuntu içinde çalışmak için OpenJDK-11 ve OpenJFX uygulamalarına ihtiyaç duymaktadır. Bunun için ;
1.2.1) Ubuntu terminaline aşağıda verilen sırayla kuruluma başlayınız
1.2.2) Uygulamanın .jar dosyasını terminal üzerinden çalıştırabilirsiniz
2) Uygulama
2.1)Bağlantı Ayarları
Uygulamayı çalıştırdıktan sonra Connection sekmesinden bağlanılacak olan Server Device adreslerini girerek bağlantımızı oluşturalım.
2.1.1) Connection Type
Buradan Server'la kurulmak istenen bağlantı türü seçilir
2.1.2) IP Address
Server cihazının ip adresi buradan girilir.
2.1.3) Port
Server cihazının portu buradan girilir. Değer aralığı 0 ve 65535' tir.
2.1.4) Unit Address
Server cihazının Unit(Slave) ID'si girilir.
2.1.5) Server Timeout
2.1.6) Server Scan Time
Data Block ve Tag'lerin ne kadar sürede bir tarancağını belirlemek için kullanılır.
2.1.7) Start/ Stop
Bağlantı kurulduktan sonra her 2 saniyede bir bağlantı durumu kontrol edilir.
2.1.8) Connection Status
Bağlantı durumu buradan kontrol edilir.
2.2) Data Block ve Tag Ayarları
Bağlantı kurulduktan sonra Data Block / Tags kısmından(Resim 2) önce data blocklar eklenir. Eklenen Data Block'ların içine, okuma ve yazma işlemi yapılacak olan Tag'ler eklenir.
2.2.1) Data Block
2.2.1.1) Name
Tabloya Data Block eklerken isimlendirme yapılması zorunludur. Data Block isimleri ID olarak kullanılır ve benzersiz olmak zorundadır.
2.2.1.2) Type
Eklenilmek istenen Data Block türü buradan seçilir. Her Type'ın Start Address aralığı farklıdır.
2.2.1.3) Start Address
Okunmak istenen verinin adresi buraya girilir. Seçili Type'a göre adres verilir. Uygulamada :
* Coil adres aralığı 1-9999
* Discrete Input adres aralığı 10000-19999
* Holding Register adres aralığı 40000-49999
* Input Register adres aralığı 30000-39999
olarak belirlenmiştir.
2.2.1.4) Amount
İşlem yapılacak Tag sayısı kadar Amount girilir.
2.2.1.5) Buttons
Add : Data Block'ların Name, Start Address, Type ve Amount alanları doldurulduktan sonra butona tıklanarak tabloya ekleme işlemi yapılır.
Update : Güncellenmek istenen Data Block tablodan seçildikten sonra değişiklikler yapılıp butona basılarak güncelleme işlemi gerçekleştirilir.
Delete : Silinmek istenen Data Block tablodan seçildikten sonra butona basılarak silme işlemi gerçekleştirilir.
Clear : Name, Start Address, Type ve Amount alanlarını temizlemek için kullanılır.
2.2.2) Tags
Her Data Block'un kendi Tag'leri vardır. Tag eklemek için önce Data Block seçilir, daha sonra Tag'ler eklenir.(Resim 4)
2.2.2.1) Name
Data Block'lar gibi Tag'ların ismi de benzersiz olmak zorundadır. Name sekmesi boşsa yeni Tag eklenemez.
2.2.2.2) Type
Okunmak istenen Tag değerinin türüne göre Type seçilir.
2.2.2.3) Address
Tag eklerken seçilmiş olan Data Block'un ,Start Address'i ve Amount'una göre Tag adresi girilir. Örneğin Start Address'i 1 ve Amount'u 10 olan bir Coil'in(Resim 5), Tag adresi 1-11 arasındadır. Bu aralıktaki herhangi bir değer seçilerek ekleme yapılır(Resim 6).
2.2.2.4) Byte / Word Swap
Tag'lerin Byte Swap, Word Swap olarak okunması için buradaki alanlar seçilir.
2.2.2.5) Buttons
Add : Tag'lerin Name, Address, Type, Byte Swap ve Word Swap özellikleri seçildikten sonra butona basılarak ekleme işlemi gerçekleştirilir.
Update : Güncellenmek istenen Tag tablodan seçildikten sonra değişiklikler yapılıp butona basılarak güncelleme işlemi gerçekleştirilir.
Delete : Silinmek istenen Tag tablodan seçildikten sonra butona basılarak silme işlemi gerçekleştirilir.
Clear : Name, Address, Type, Byte Swap ve Word Swap alanlarını temizlemek için kullanılır.
2.2.2.6) Tag Value Ekleme
Tag'lere değer girmek için tabloda seçtiğimiz Tag'e çift tıklayarak açılan sekmeden atama yapabilirsiniz.(Resim 7 ve 8)
2.2.2.7) Chart
Tablodan bir veya daha fazla Tag seçilerek Farenin Sağ Tuşuna tıklanılıp gelen menüden Chart seçilir. Çoklu seçim yapmak klavyeden Ctrl tuşuna basılı tutularak, tablodan seçim yapılır(Resim 9).
Açılan Chart, Date ve Value değerlerini göstermektedir. İmleci grafikteki noktalara götürerek bu değerleri okuyabilirsiniz.(Resim 10) Açılan pencerenin altındaki Legend grubundan izlenilmek istenen Tag ismine tıklayarak Chart'ı değiştirebilirsiniz.(Resim 11) Grafik üzerinde boş alana tıklanıldığında ise Chart orjinal haline geri döner.
2.3) Function Kullanımı
Uygulama üzerindeki Menu Bar'a tıklanılarak Functions menüsü üzerinden istenilen fonksiyonun sekmesini açabilirsiniz.(Resim 12)
2.3.1) Coils / Discrete Inputs
Açılan sekmede Start Address ve Quantity değerlerini girdikten sonra Function kısmından yapılacak işlemi seçip, Execute butonuna tıklayatak fonksiyonu çalıştırabilirsiniz.(Resim 13 ve 14)
Coil / Discrete Input'larda Write işlemi yapılması için tablo üzerindeki Value sütunundan hücreleri seçerek atama yapabilirsiniz.(Resim 15) Start Address ve Quantity için verilebilecek maksimum miktar geçildiği zaman sekme üzerinde uyarı yazısı çıkar.(Resim 16) Bu uyarı durumu tüm Function'lar için geçerlidir.
2.3.2) Holding / Input Registers
Açılan sekmede Start Address ve Quantity girildikten sonra Function seçilir ve Execute butonuna basılarak çalıştırılır. Okunmak istenen değerin tipi Type kısmında değiştirilebilir.(Resim 16) Seçilen adrese değer atamak için tablonun Value sütunundaki hücrelere Fare ile çift tıklayarak atama yapabilirsiniz.
2.3.2) Mask Write Register
Mask Write Register fonksiyonu sadece Holding Register'lara atama yapmak için kullanılmaktadır. Okunacak Address girildikten sonra Mask'lere 0 yada 1 değerleri girilerek çalıştırılır. Mask'lere değer girmek için her seferinde tek bir rakam seçilerek atama yapabilirsiniz.(Resim 19 ve 20)
2.3.4) Read / Write Register
Write Address ve Quantity belirlendikten sonra oluşan tabloda değer atanacak adresin Value sütunundaki hücreye imleç ile çift tıklayarak değer ataması yapabilirsiniz. Daha sonra okunmak istenen aralığa göre Read Address ve Quantity alanları doldurulur ve Execute butonuna tıklanılarak çalıştırılır.(Resim 21)
2.4) Logs
Uygulamada yapılan işlemleri ve seçimleri, bağlantı kurulduğunda Server cihazına yapılan istekleri ve oluşan hataları takip etmek için Log alanı kullanılır.(Resim 22) Ayrıca Search alanını kullanarak istenilen verileri filtreleyebilirsiniz.
2.4.1) Copy / Clear
Seçilen Log'lara Fare ile sağ tıklanıldığı zaman açılan menüden, Copy'ye tıklanılarak kopyalama işlemini gerçekleştirebilirsiniz. Aynı zamanda Clear'a tıklayarak biriken logları temizleyebilirsiniz.
2.4.2) Log Level
Takip etmek istediğiniz logları filtrelemek için Log Level alanından bir katman seçebilirsiniz. Ayrıca alandaki Log'lar :
INFO -> Mavi
ERROR -> Kırmızı
WARNING -> Sarı
olarak renklendirilmiştir.
2.4.3) Export
Export butonuna basılarak sekmede loglar Text File olarak, açılan pencereden seçilen yere kayıt edilebilir.
2.5) Save / Load
Uygulama içi ayarları kaydetmek veya yüklemek için üst kısımdaki bardan File seçilir. Burada Save Config'e tıklayarak ayarlarınızı JSON File olarak kayıt edebilir veya Load Config'e tıklayarak yükleyebilirsiniz. Ayrıca uygulamadan daha güvenli bir şekilde çıkış yapabilmek için Exit Application'ı kullanabilirsiniz.(Resim 23)
Modbus TCP/UDP Client ENGLISH VER.
inSCADA Modbus Client
1) Setup
1.1) Setup for Windows
This modbus client application designed as click-to-run in Windows. You can use it directly after after downloading application by clicking ins-mod-cli.exe.
1.2) Setup for Ubuntu
You need at least version 11 of OpenJDK and OpenJFX to run application in Ubuntu. Here is a step by step instruction for easy installation :
1.2.1) Install the needed version of OpenJDK and OpenJFX
1.2.2) Now you should be able to run executable .jar file from Ubuntu terminal
2) Application
2.1) Connection Settings
After starting application you must set your settings according to your slave device. If your settings are true you should be able to establish a successful connection.
2.1.1) Connection Type
You can select a Connection Type that you want to establish in here
2.1.2) IP Address
Set your Server(Slave) Device's IP Address in this field
2.1.3) Port
Set your Server(Slave) Device's Port in this field
2.1.4) Unit Address
Set your Server (Slave) Device's Unit Address(ID) in this field
2.1.5) Timeout
2.1.6) Scan Time
2.1.7) Start / Stop
After you pressed to Start button the application will check connection status in every 2 seconds
2.1.8) Connection Status
2.2) Data Block and Tag Settings
After establishing connection , add your Data Blocks and Tags for performing read and write operations(1.1)
2.2.1)Data Block
2.2.1.1)Name
You must define a name when you are adding new Data Blocks in table. The application uses name as ID and it has to be unique
2.2.1.2) Type
Select a Data Block Type in this field
2.2.1.3) Start Address
You must define your start address according to selected Type in this field. Every Data Block Type have an address range.
*Coil Range : 1-9999
*Discrete Input Range : 10000-19999
*Holding Registers Range: 40000-49999
*Input Registers Range : 30000-39999
2.2.1.4) Amount
Define this field according to Tag count to be processed otherwise you cant read or write your slave values correctly
2.2.1.5) Buttons
Add : Adds datablock after you fill fields of your data blocks Name, Start Address, Type and Amount
Update : Updates the selected item from table. If multiple items selected it only deletes last item
Delete : Deletes the selected item from table. If multiple items selected it only deletes last item
Clear : Cleares Name, Start Address, Type and Amount fields.
2.2.2) Tags
Every Data Block has its own Tags. You must define a Data Block before you add any Tag.(1.3)
2.2.2.1) Name
Like data block names, Tag names must be defined and unique too.
2.2.2.2) Type
Select a Tag Type that you wish to read / write value
2.2.2.3) Address
Define your tag address according to your Data Block's Start Address and Amount. If your Start Address is 1 and Amount is 10 your Tag Address must be in range between 1-11.(1.4 and 1.5)
2.2.2.4) Byte / Word Swap
Check or Uncheck these fields according to value that you wish to read or write
2.2.2.5) Buttons
Add: Adds Tag after you fill Name, Address, Type, Byte and Word Swap fields.
Update: Updates selected tag from table. If you select multiple Tags from the table it only updates last one
Delete: Deletes selected Tag from table. If you select multiple Tags form the table it only delets last one
Clear: Clears Name, Address, Type, Byte and Word Swap fields.
2.2.2.6) Setting Values
You can open Set Value tab by double clicking selected Tag in your table.(1.6 and 1.7)
2.2.2.7) Chart
Select single or more Tags from the table and Right Click to selected items. Choose Chart after a menu shows up. You must hold CTRL button from keyboard if you want to select multiple items.(1.8)
Chart shows values and dates only. If you want see specific value from chart, you can drag your mouse to dots in chart . Also you can show only selected Tag in Chart by clicking Tag Name Legend below the tab. Press an empty field in chart if you want to return default look.(1.9 and 2)
2.3) Using Functions
Click to Functions section from Menu Bar at the top of the application. Then select the function that you wish to use.(2.1)
2.3.1) Coils / Discrete Inputs
Select a Function you want to operate, define Start Address and Quantity. Then press to Execute button and execute your function. You can set values from Value column cells by checking or unchecking boxes.(2.2)
2.3.2) Holding / Input Registers
Select Function in opened tab and define your Start Address and Quantity. You must set values from Value column, Double Click on Value column cell and define your value and press enter to set. Then press to Execute button to execute selected Function operation.(2.4)
Use Type to change value types from table.(2.5)
2.3.3) Mask Write Register
Mask Write Function works only for holding registers. First set your holding register address to read. Then set values of OR and AND Mask. You must select one by one to define each value in Mask's.(2.6 and 2.7)
2.3.4) Read / Write Register
After setting Write Address and Quantity, select your Type of value to write and define value from table. Then set Read Address and Quantity you wish to be read and click to Execute button. Register values will be shown in Read Result table.
2.4) Logs
You can use Logs section to follow your selections, operations, requests and occurred errors. Also you can use Search field to found specific datas.
2.4.1) Copy / Clear
Right Click to your Log section and choose Copy or Clear log operations.
Copy: Copies selected log to clipboard
Clear: Clears all logs.
2.4.2) Log Level
Select a log level that you wish to filter. Some of these levels are shown colored in logs
INFO -> Blue
ERROR -> Red
WARNING -> Yellow
2.4.3) Export
Export save logs as Text File, you can select the export location after clicking to Export button.
2.5) Save / Load
Select File from Menu Bar to Save or Load your settings. Application can only save settings in .JSON format and loads configs in .JSON format. Also you can use Exit Application to close application safely.
Last updated