Forum Replies Created
-
AuthorPosts
-
manjey73ParticipantShow the Modbus settings for this command, an example of which you showed in the screenshot.
manjey73ParticipantFor a channel to be written to the device, it must be Input/Output or Output
And yet, scripts cannot access writing to the device without your participation or without the participation of the auto-control Module.
manjey73Participanthttps://rapidscada.net/docs/en/latest/developers/driver-development
Unfortunately, I don’t have any devices with the CAN 2.0 protocol, and I can’t even start writing a driver.
manjey73ParticipantIt’s not entirely clear what you want. Describe what kind of Modbus device and what exactly needs to be sent to it? Take screenshots for understanding.
By returning byte[] from the output formula, you are sending CmdData to the device, that is, replacing it with the one you need.
manjey73ParticipantHow to implement it? – – – – Write a driver for this protocol. There is a lot of time to study and experiment if the device is available, and preferably the ability to use native programs to remove read and write logs.
What kind of device do you have? is there documentation for it?
manjey73Participant// Recording the date in the EKF PLC (Haiwell) is an example public byte[] WriteDt() { DateTime dt = DateTime.Now; var year = BitConverter.GetBytes((ushort)dt.Year); byte[] cmdData = new byte[14] {0, 0, // Регистр года 0, (byte)dt.Month, 0, (byte)dt.Day, 0, (byte)dt.Hour, 0, (byte)dt.Minute, 0, (byte)dt.Second, 0, 1}; // команда на запись в PLC cmdData[0] = year[1]; cmdData[1] = year[0]; return cmdData; }If you need to return bytes, you can look at this example. A multiple command is created in the Modbus Device (entry code 16 – 0x10)
manjey73Participant
manjey73ParticipantAt the moment, via OPC.
If we are talking about CANopen, then if there are devices, it could be implemented as a driver. Can you provide such devices with remote access?
manjey73Participanton Img1, you can see that Val = 0.000 but Data is 363030
And this is the number 600 in the ascii code.
manjey73ParticipantHave you tried using input and output formulas?
For example, process your string value using CnlData in the input formula
Also, when writing, you can send CmdData instead of Cmd.
manjey73ParticipantWell, you need to install ElasticReport first.
And following his example, the xml in the sent ones should be replaced with the channel numbers that you have in the project. See how it will all be displayed in html.
I didn’t understand much, to be honest. There you can change the names of channels, what exactly to output, and so on.
manjey73ParticipantChange my Elastic Report test configs there chlNum to your own and try it.
manjey73Participant
您必须安装两个dotnet组件。
You must have two dotnet components installed.
manjey73Participantunfortunately, I didn’t really figure it out myself 🙂 All the time, when I try to deal with him, I don’t have enough patience. And the primitive that I wanted to make didn’t suit me, because it doesn’t support it.
-
AuthorPosts

