Jump to content

Search the Community

Showing results for tags 'modbus'.

More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


  • Our Community
    • Come on in!
  • News and Announcements
    • New! UniLogic V1.23 introduces MQTT!!
    • VisiLogic:9.8.64 - Link to mobile app, Ladder: 2x the Space!
    • New!!! ***** U90 Ladder*****
  • UniStream HMI + PLC Programmable Controllers & UniLogic Software
    • UniStream: Hardware
    • UniLogic Software
    • UniLogic UDFBs
    • Industry 4.0, IioT, MQTT--Looking forward
  • Vision, Samba, Jazz and M90 PLC + HMIs & Software
    • Vision & Samba PLC + HMI Controllers & VisiLogic Software
    • Jazz, M91 PLCs and U90Ladder
  • Software Utilities
    • SD Card Suite
    • Remote Operator
    • Remote Access
    • DataXport and DataXls
    • UniDownloader
    • UniOPC
    • UniDDE
  • Utilities for .net and Visual Studio
    • Unitronics PCOM Protocol
    • COM Object ActiveX .dll
    • .NET driver
  • Project Design
    • ...I have a project...what hardware do I need?
  • User Application Stories
    • Just finished a great project?
  • Tips and Tricks
    • Best Programming Practices
    • Tips and Tricks
  • Job Board
    • Projects seeking Programmers
    • Programmers seeking Projects
  • General Discussion
    • We're Listening...
    • The Lounge
  • News and Announcements Copy


  • Unitronics' Blog: PLCs, HMIs and more
  • Saragani's Blog
  • Simon's Blog
  • Ash Neilson's Blog
  • Joe Tauser's Blog
  • Unitronics en Español
  • Powered by AMPS
  • Alldrives UK's Blog
  • Unitronics, Howman Style
  • PLCNewbie's Blog
  • Telestar Automation Blog
  • Webinars Collection
  • Tim's Corner
  • Blog
  • TELESTAR (Italian)
  • i4 Automation
  • i4 Automation (UK)
  • Unistream UDFB's


  • From Headquarters: Sample Applications
    • From Headquarters: VisiLogic
    • From Unitronics: U90 Ladder applications
  • User-submitted Applications
    • From Users: VisiLogic applications
    • From Users: U90 Applications


  • Articles
    • Forum Integration
    • Frontpage
  • Pages
  • Miscellaneous
    • Databases
    • Templates
    • Media

Find results in...

Find results that contain...

Date Created

  • Start


Last Updated

  • Start


Filter by number of...


  • Start





Website URL






Found 87 results

  1. Hello, I'm currently trying to read an encoder value from a drive via ModBus. The encoder value is split into higher 16 bit and lower 16 bit, hence I have to read two registers. Is there an easy way to combine the two values to get the single 32 bit value I'm after? TIA Jamie
  2. Hello, I have almost successfully established Modbus communication with a servo drive. I say almost, I cant read the register but I cant write to them. I want to change the speed via a button on the HMI. I get a -11 on the stats tag which is timed out. Could someone please have a look at the ladder for sending the modus write. Have I missed something?
  3. Hi, today in our company we received an ultra filtration system that comes with a V1040 on it. We've never had worked with an unitronics system before and we are trying to communicate the plc via modbus rtu over rs485 to work with our network. We configured the com port of the plc to work with rs485 as it was factory configured to work with rs232 but we can't reach it on our system, it's just showing of offline status. In the ladders we had a special subroutine for modbus, including all the registers and status of the system, we are reaching these points but it doesn't work. I'll attach some screenshots of the COM and modbus configuration and the modbus registers that i'm trying to read and i'll appreciate any help if i'm doing something wrong. Also, if i modify the program i need to upload it all or there is an option to upload only the com configuration without stop the plc? Due to the critic status of the process i only have a few minutes to stop the plc so i'll appreciate any shortcut to work faster on the system. As i said we've never worked with this plc before so we don't know the kind of responses of the system.
  4. Hello, Does anyone know of any problems with including both a Modbus Config and a Protocol config for the same COM port in the same program? I'm talking to a peripheral device which under certain circumstances may need to be sent an ASCII Protocol command to switch it to Modbus mode, so I will need to be able to do both types of communication in the same program on the same port. Can the two coexist, or will I need to re-execute the appropriate Config block when switching from one communications mode to the other?
  5. Dear Alls, I have to set up my Unistream to works at same time as Slave by Modbus RTU TCP and Masert by Modbus RTU RS485. I already wrote the program part about slave (Modbus TCP) than I set PLC communications->Protocols->MODBUS->Slave->Panel Ethernet...I have set the registers and "wrote" the code...now I am approcing the Slave side...my question is: I must use/set the same PLC communications->Protocols->MODBUS->Master->RS485 or I can mix/use the first with the PLC communications->Physical->Serial COM ? I hope that my qestion is clear enough. thanks
  6. mwis750

    Modbus error code "-11"

    Hi, I'm using USP-070 with UAC-02RSC. I setup two MODBUS masters - one on COM1 (9600 8N2) and one on the additional port (9600 8E1). For each master I've defined 30 slaves with two periodic operations (period 1 min). The first modbus line works without any issues however on the second one I'm getting weird results - around half of reads are successful the rest returns status 3. Status of operation is set to -11. I can't find any documentation what it means. There are no dropped packages, and each slave was double checked to make sure it uses correct transfer params (9600 8E1). Any ideas what can be wrong, or what -11 means ? thank you, Michal
  7. I'm working on a project in which I have to provide a huge number of data to a upper level SCADA system with Modbus TCP. Is there a possibility to import Slaves Addressing Lists from Excel? (like the export option?) Is it possible to use the Advanced Modbus Functions to provide data addressing as Modbus Slave? Are there any other options to provide the data? Thank's for your help!
  8. Dear all, I'm programming an application on a SM43-J-R20 PLC+HMI. I've added a V100-17-RS4X card, in order to use RS485. I've succesfully implemented Modbus RTU communication with a Frequency Drive. The thing is, I need to communicate with 11 of them. The ladder logic so far uses the Modbus function blocks, as can be seen on the Modbus webinars on Unitronics page. That is, I SET a variable (ex:MB0) , which is used for enabling the "function 06 Modbus" block (preset holding register). At the output of the block, I RESET that same variable, ensuring the block gets executed. At the same time I reset MB0, I SET a new variable (MB1), which in turn is used for enabling the second Modbus block. This creates a sort of "continuous broadcast" to the drivers (which, If they don't receive a command in a certain time, trigger a failure). When the last block gets executed, the sequence restarts, The question is, when I try to send a Stop command to one driver (for example), it takes an awful amount of time to execute the order (30 seconds or so). I believe I may have a conflict between some of this blocks being executed at the same time. Is there a tutorial or an example where I can see how to succesfully implement Modbus communication with several slaves at the same time? Thanks for the support. Kind regards, Martin
  9. dafontem

    Real number byte order

    I am reading values via rs-485, and am correctly reading and displaying these values on the unistream. However, I need to pass these values on to a building management system via Modbus tcp over ethernet. I have no issue communicating with the system, and I believe the system is correctly reading integer values from the unistream. The issue I run into is with real numbers. For one thing I can't seem to find anywhere that says what the default byte order is for real numbers (big endian, little endian) or how to change that, which I believe is at least a large part of the problem. I have been stuck on this problem for over a week so any feedback would be great.
  10. 1) When editing IO Inputs or Outputs Alias Names directly (from the table view, without going into window for editing single tag) - cold not put a space symbol between words while writing (later when the whole "Input5AbracadabraOpenSesame" is written, you can, of course go back and put spaces in between words finally getting to the "Input 5 Abracadabra Open Sesame"). Problem is not observed while editing in single tag editor window. This is new mis-behavior, which was not observed some versions earlier. 2) In Data Table view - String literals are center-aligned without any obvious reason, which detracts from readability of large tables. For Number literals it makes sense to have them centered within cells, which more likely adds readability rather than destroys it, but it's a different story for the Strings. 2.1) In the same Data Table view - it is unable to directly edit anything without explicitly going into editor window for each cell with double click... That's so tiresome and time consuming for large tables. Exception is direct Paste, which however helps little, if each cell is slightly different. 3) Alarms - ID's could not be freely changed... I see no obvious reason for not allowing to do that because there are gaps still allowed (by deleting some alarms in the middle) and no automatic reordering of ID's is then happening. Of course it does not change much, but adds to the overall order and clarity of the project. Thus why not allow to change them freely, of course, with checking for duplicates. 3.1) Alarms could not be moved around (between groups for example). Took me few weeks to reorder entire system of 100+ Alarms... 4) Ladder function could not be duplicated, like almost anything other could. 5) The XY Plot is wrong type of thing, or at least I need a different flavor (see attached pictures): a) XY_Beijer is the reference - a single clearly visible point of arbitrary size is drawn for each feed in data sampler; the lines referencing these point(s) to the X and Y axes are drawn (switchable on/off); the background where any arbitrary function could be drawn or at least a clear background where any arbitrary picture could be put into (switched during runtime, not statically linked); b) there is always a cause - see the Weather_compensation; c) and a workaround - see the Comfo_Uni which is far from ideal, but at least works, somehow... Why all of this - I was asked to implement Comfomatic (Weather compensation for central heating) functionality as addition to primary functionality. Typically it is done in special hardware like Danfoss ECL series controllers, however the underlying mathematics is rather simple, so why not.... It worked out - making a usable user interface is a major pain on the Unistream platform.... d) of course in ideal world, I'd be asking the Unitronics team to implement the entire functionality in specialized function block, both for GUI as well as for Ladder, however I understand there are so many uses for these PLCs that implementing separate function block for each of them would lead to the same clutter which was seen in VisiLogic series software and which the Unitronics guys were presumably trying to avoid in Unistream. e) and there is always a workaround of the workaround - or better, I call it suggestion 2: The the simple Canvas control could be added to the GUI section - thus allowing users to draw whatever they need to solve such challenging tasks... (or if the screen is already a canvas itself, then at least allow to draw some primitives - dots, lines & rectangles from the Ladder (yes I know there is a Line element in GUI, but it is static, you can not even put a variable as its X1,Y1 and X2, Y2 points... thus it's unusable). 6) Each MODBUS target has the Modbus Remote Slave structure attached. This structure has very useful variable 'Fail' within it. It could be ideally suitable for checking for communication problems, and throwing Alarm to the user if any. But what's next - user cannot clear the alarm, because there is now way to drop it to the zero (I mean, there is no way to write 0 to this structure). Yes, of course there is again a workaround - copy the contents to another variable and then compare to it, not the 0, But why always a workaround? Why not do the things right the firsthand. 7) I'm still begging for ability to reorder members of the struct, like it's done in SMS Message composition with the List Of Text Variable - simple control to move members up and down. It has no meaning while the project is little and simple, but when it becomes large enough, when various functionality is added to different parts all the time, when structs determine what is written to different tables back and forth, then keeping various recent additions together with their primary counterparts rather than at the end of the struct, could be soooo meaningful. At present its a tremendous and very time consuming job to reorder the structs, by renaming and replacing every single appearance everywhere, when it could so easy be made to happen automatically. Not to mention, that is so easy in plain C, just cut one and paste above each other... Many thanks for the product already that great (light years away from said Vision or Samba), but of course, any improvement would be warmly welcome. P.S. Please double-check the communication with Cinterion BGS2T modem - it tends to drop from time to time (worse with USB-COM, better with UAC-01RS2, but still not ideal) and then it's unrepairable till the next complete reboot of the PLC... (re-initialisation has no effect).
  11. Hello I am using modbus RTU Reading two sensors. Modbus ID = 1 & 2 respectively. From each sensor i read two values, one 16bit and one 32bit float. Baudrate = 9600. When I activate communication using "Active periodic" bit any one of the sensors (only) I can set my update interval at 100ms without having failures. The "funny" things occur when when i activate both: If I set my update interval at 400ms: It updates values from both sensor for a few Seconds (at 400ms rate), then it stops completely updating the reading/values from ID2. But the "success" Counter continues to count. And the values from ID1 continues to at 400ms rate. If I set my update interval at 500ms: It updates values from both sensor for a few Seconds (at 500ms rate), After a few second the ID2 values are updated at 50% rate (1s). ID1 continues to update 500ms. If I set my update interval at 1000ms: It updates values from both sensor at 1000ms without any problem. Any tips on why this happens and how to solve it? In my Application I need as fast update rates and would have thougt that beeing able to read one sensor at 100ms, I should be able to read 2 sensors at 200-250ms. Thanks for a super Product! Meeg
  12. I have multiple devices such as printers(2) and scanners(2) that I want to communicate to using only 1 COM port in V1040 PLC. Printers and scanners support RS232/RS485 protocols. Can someone suggest on how can I achieve this? I looked at options with Modbus protocols, but I didn't understand how can I assign network id's to my printers and scanners. If I am required to have any additional hardware, please suggest.
  13. Hi! My name is Arnor and I am from Iceland I am trying to establish connection between two Vision PLC's. I have the master: V700 and V350 as slave. I can use SCADA pc software to connect to the slave and read the data. But I am not able to read data from slave to V700. I added both programs to google drive folder (sorry, the programs was to large, and its a bit mesh): https://drive.google.com/open?id=1yL1h1ZvJomBeoY7v22UvHVeY09T4ooAC I am using also Serial modbus on both sides that works well. The PLC are set up like this: V700: V350: Any idea what I am doing wrong? cheers!
  14. smartdesignmike

    UniStream advanced Modbus commands

    Where can I find out what the advanced Modbus commands do? Help does not have anything as well as the online help.
  15. Hello, I'm trying to figure out how to make a watchdog function in a Samba SM35-TA22- The customer will use TCP/IP to mostly read values from the PLC. If the communication goes down, the unit should stop. But I have no idea how to make this. I was looking at SB147 which is Socket 0 connected but it is constantly changing when I disrupt the connection, I guess it is due to auto connect. Is it the best option to use SB147 with perhaps a timer so if it is on for 10 seconds, that means the communication is up and the unit can run, but if sb147 change, the timer reset and the unit is stopped. I just want some feedback if I'm all wrong here. Thanks! //Peter
  16. Hello, I'm have some problems with the conversion of two integers to a floating point value. I have a modbus energy meter (SDM120) who works with 32bit IEEE745 floats values. In visilogic I receive two 16bit integers (MI); MI0 : 15643 MI1: -23069 I converted these integers to bits by the 'num to bit' function block. These are the converted value's : MI0 : 15643 --> 0011 1101 0001 1011 MI1: -23069 --> 1010 0101 1110 0011 If I put the two value's behind eachother I get the following binary code: 0011 1101 0001 1011 1010 0101 1110 0011 (MI0,MI1) When I fill in these binary code on a online binary to IEEE745 converter I get the following result: 0,038 This matches with the amps showing on the energy meter's display. The question is; How can can I make from MI0(15643) and MI1(-23069) a float in Visilogic So, MI0(15643) and MI1(-23069) -------------- some kind of formula -----------> MF0 = 0,038 Annyone who can help? Best regards, Jelmer
  17. Javier Camusso

    Reuse Socket

    Hi everyone! I´m using the four sockets in a Vision 130, and I need more! So, I tried to redifine a socket in run time according to some conditions, but I find out that once the socket was defined, I can´t redefine it. The socket is first initialized as TCP / Port 502 / Server. A Modbus IP configuration is attached to this socket, and running as Modbus IP Slave. Then, I close the socket... ...and redefine it as UDP The result is that the socket never loose the Modbus definition, and can´t connect via UDP. When the second socket definition is executed, the socket state goes from 20 to 34. If I insert a reset of the PLC before the second definition, all runs correctly. So, I think that the only way to "release" the socket definition is restarting the PLC. Is this right? Or (more likely) I am doing something wrong? Thank you very much!!
  18. We have an RS485 based communications issue We are using a Unitronics V430-J-RH6-N to communicate to a network of up to 4 slaves, consisting of Ziehl-Abegg Modbus modules. The ZA module wiring requires that, in addition to the data lines, the ground connections also be daisy chained together. This is what I am used to. The Unitronics communications connector does not specify a ground connection on the 6 pin RS12 connector provided. They only mention using pins 1 and 6 for Data A and B. 1. Where at the PLC do I terminate the ground for the RS485 circuit? Currently we have it tied to chassis. 2. Is there a possibility that tying the V0 ground at the PLC to Chassis, as suggested in the Unitronics documentation, could be causing us issues? The ZA socuentation specifically mentions NOT to connect the shield on the cable.
  19. Hello all, I am new to unitronics products and software. Maybe anyone has experience with Unistream 10 Master and V700 slave (3 devices as slaves) over rs485 project or something similar. Any help would be appreciated.
  20. Mark Silka

    Modbus word to bit array

    We have a UniStream HMI which is connected to a remote Modbus Slave (Prosoft PLX31 Modbus Gateway) I need to read the bits from particular words which hold the status of sensors mapped to the Gateway tables. On the holding register entry page, it does not allow for just reading 1 bit of a word. Is there a work-around or some example of plc logic that will take that register and read the bits into a bit-array? Thank you,
  21. Aurimas

    Modbus timer R/W

    Hello, is there a posibillity for reading and writing a timer value (not only MB or MI)? I am using unistream 10 as a master and v700 as a slave.
  22. snizami

    Real word Byte Order

    Does any one know what is the native Byte order of Unilogic when a Modbus Double Register is mapped from a Remote Slave;
  23. Hi, I have Unistream 10 as a master and multiple slaves (8) over Modbus RS485. What device do I need to connect all the slaves into one master?
  24. Hello, For a project im working on I need to motitor serval energy sources and control multiple relays. I would like to use the Samba 4.3" PLC for giving a nice interface to the system. The problem is that I have over 30 outpust I need to control. I've found a modbus RTU (RS485) energy meter who measures the voltage and current. Also found a modbus RTU (RS485) digital output module with 16 outputs. Is it possible to use the Samba 4.3" PLC with V100-17-RS4 module to communicate over modbus with the IO modules and energy meters? Best Regards, Jelmer
  25. Hi. I have a Unitronics JZ20-R16 (Jazz2) controller I’ve programmed to run a simple air ventilation system in my house (The thing is running great btw.). I also have a self made Arduino based data logger (I use it to monitor and log my energy consumption, temperature, etc.) I’m not building those things or mass producing, Arduino electronics is my hobby - I just use it to stay sharp. So I decided to cross-integrate my air vent. Controller with my data logging unit (I want to see the status of my air vent. Controller unit on Arduino). So for starters the task is to simply send a 16bit int to Arduino and receive another 16bit int from the Arduino. The communication protocol of the choice was MODBUS through RS232 interface (as I already have MJ20-PRG; MJ20-CB200 and a MJ10-22-CS10). I’ve decided to use JZ20-R16 as a Master (Arduino as a Slave) in a 9600 baud 8N1 configuration (default for JZ20-R16). For Arduino’s RS232 interface I’ve used TTL-RS232 converter (MAX3232 based) : Experiment 1: In order to see if the Arduino’s MODBUS feature is working I’ve connected Arduino to my PC using the given connector and a RS232-USB converter. Arduino was configured as a slave and ModbusPoll software (http://www.modbustools.com/modbus_poll.html) simulated a master. I was able to both read a holding register from Arduino (03) and also write a register (06). Those are the desired options. Experiment 2: In order to see how MODBUS is working on JZ20-R16 I’ve hooked it up to my PC using my MJ20-PRG; MJ20-CB200 and a MJ10-22-CS10 later connected to RS232-USB converter. I’ve uploaded a program (by pressing buttons 1 and 4 I send an int or correspondingly request an int from slave): (see in uploaded files) It make the JZ20-R16 work as a Modbus master on a RS232 interface. In order to simulate a slave I’ve used ModbusSlave software (http://www.modbustools.com/modbus_slave.html) . Once again, the combination worked perfectly. Once again all the required commands worked. Here’s the photo of my hookup: Then I’ve noticed a possible cause for future problems : lines 4 and 7 of my MJ10-22-CS10 are actually used in this communication. It turned out that the RS232 communication with JZ20-R16 require 6 wire communication instead of 3 wire communication I’ve expected from RS232 interface. Due to the requirement of RTS and DTR signals! I’ve turned on my scope and actually saw those signals on pins 4 and 7 of MJ10-22-CS10 connector going high after the “handshaking” with my slave simulator was done. With PC USB disconnected: PC USB Connected: MudbusSlave after “handshaking”: Successful communication: CH3/4 are the DTR and DTS signals correspondingly. At this point I’ve realizes that sue to those signals I would not be able to connect my Unitronics to my Arduino, as the TTL-RS232 connector simply do not support DTR and DTS signals. So after hooking up my Arduino to Unitronics I see the following on the scope: Both DTR and DTS signals are on 0 instead of HIGH, which prevents the JZ20-R16 from accessing the modbus. The questions: Is there any chance to make JZ20-R16 communicate over RS232 without use of DTR/DTS signals? Is there an option to tweak those signals (connecting them to +5V permanently) Use of other TTL-RS232 converter? Any other way to make Arduino and JZ20-R16 communicate over RS232 interface using MODBUS Thank you for the patience. samplemodbusmaster232.U90