Sending a message to the CANbus with a Schneider M241 PLC

thedolanduck

Member
Join Date
Mar 2022
Location
Santa Fe
Posts
10
Hello everyone!

I have a Schneider M241 as master of a CAN network with several encoders and whatnot, everything is working fairly well. Now, recently I had to add a new device to the network, an IMET M880 Zeus2 waist belt transmitter, which I did and is working OK. Except for one thing: I cannot write to its display (it's an optional feature to include a display, but my client requested one).

See, IMET provided me with an EDS file, so all I did in my SoMachine project was install the device using said file through the Device Repository, add it to my CANOpen bus, and voilƃ*, I had all my variables automatically mapped. All I did was put a name on them and add them to my logic.

This worked wonders for all the Tx-PDO's, i.e. reading which joystick I am moving and which way, etc. But apparently, for the Rx-PDO's (a.k.a writing to the display) it does not. I follow the manual's instructions (see image no. 1) and nothing happens.

Now, I used a CAN Interface for PC and the Maintenance Tool software by IFM to connect my laptop to the CANbus. I started monitoring it, and came to realize that not one message was sent to the COB-ID 264H, which explained why nothing was showing up in the display. Then, I used said software to manually write the HELLO word, and it worked! (See image no. 2)

Obviously, then, I am doing something wrong in the PLC part. From what I understand, all I have to do is move HEX values to the corresponding USINT mapped variables, nothing fancy, but I must be missing something. In particular, I'm doing:

Code:
Start_Pos = 16#02;
Valid_Chars = 16#05;
Char_1 = 16#48;
Char_2 = 16#45;
Char_3 = 16#4C;
Char_4 = 16#4C;
Char_5 = 16#4F;

I also tried changing the Transmission Type in the PDO configuration from SoMachine, but none of the available options worked and I really don't know what else to try.

I apologize if this is too dumb, and I hope anyone of you know the answer. Thank you! šŸ»

Image no-1.jpg Image no-2.jpg
 
Have not used SoMachine but in some other systems, I have had to adjust the inhibit time of PDOs if they defaulted to something that would try to send data continuously. This keeps the PDO from being sent (or attempting to be sent) more frequently than the inhibit time.
 
Have not used SoMachine but in some other systems, I have had to adjust the inhibit time of PDOs if they defaulted to something that would try to send data continuously. This keeps the PDO from being sent (or attempting to be sent) more frequently than the inhibit time.


Hello Norman, thanks for replying. Unfortunately, SoMachine does not let me adjust the inhibit time of this particular PDO (see image no. 3), or any RxPDOs for that matter. I can, however, adjust for TxPDOs. I can only assume that it was disabled by the manufacturer via the EDS file, but that's only my guess.

Image no-3.jpg
 
Hello again, I continued my investigation and discovered that, while connected online to the PLC, you can read and write SDOs from SoMachine using the Status tab under a CANOpen device.

Now, I set some values into the corresponding variables and then read the appropriate Object Dictionary using the functionality mentioned above. This way, I was able to see that the variables 1 and 2 (Start_Pos and Valid_Chars), had in fact taken the value I assigned to them. However, variables 3 to 8 (i.e. Char_1 to Char_6) remained with the value of 32: the ASCII value for the space character, which is why nothing appears on the display. (See images no. 5 and 6 to check what I am describing)

Another thing I tried is to write manually into this objects, bypassing the PDO, but that didn't work as the CANbus returned an error code of 0x6010002, which apparently stands for "attempting to write to a read-only object". I checked the EDS, and these show as write-only, not read-only, so this is also very odd.

Conclusion: I am more or less at the same place I was yesterday.

Image no-5.jpg Image no-6.jpg
 

Similar Topics

Hello all, I seen some post here from 2013 regarding sending text messages for alarm using FactoryTalk ME. I wanted to see if anyone implemented...
Replies
2
Views
2,009
Hello all. I'm a maintenance tech with limited PLC experience. Over the last year, I was tasked with upgrading our Legacy Panelviews to PV+. Now...
Replies
2
Views
1,173
I'm trying to figure out if it's possible for an EN2T card along with an L7x processor be used to send SNMP protocol messages? I'm pretty sure the...
Replies
4
Views
3,904
Hi all! I have s7-1200 cpu 1214c and Coner ER75i router. Router have settings to send SMS by AT commands. Also there is settings in router that...
Replies
1
Views
3,050
We have a waste water plant on our facility here and it is on auto pilot over night so no one is in the near vacinity to it. So when an alarm goes...
Replies
35
Views
21,489
Back
Top Bottom