RS485 Predefined Protocol Support Function

4 posts in this topic

Hello guys,

I am working on a project in which I have to use linear servo actuators L12 Series from IRROBOT. The control

is done via RS485 Serial port communication. From the manufacturer the L12 Series is controlled with 

Arduino IR-STSO1 but we were told that we could use our own controller. So we using the FX5U PLC to control

the actuator  via its built in RS485. The structure of the command and feedback packets for L12 Series is given

and I tried to set  some packets according to MELSOFT SERIES Predefined Protocol Support Function and use

the SP.CPRTCL communication Instruction but still not get communication and showing Error code 7D00: the value of

the number of of protocols specify by the argument S(P).CPRTLCL instruction and executed continouasly is out of the

range. I tried my best to solve this problem but still. Anyone to help me find the problem?

1.thumb.png.a2aa3f249f04d12a45640fd8105dHello guys, 


Share this post

Link to post
Share on other sites

You have a mistake in your program. You are missing the control data (D30).

S+2 (D32) Should have a 1 (protocol to be executed).

Look like you wanted to use D20 for this but than D18 should be used in your instruction 

Share this post

Link to post
Share on other sites

Hi Gambit,

Thanks very much for your help. I Have changed the registers 

D18 and D20. So D30 is the Head device number for

storing the control data, D32 is the S+2 and D30 is the S+3. Now

 There is no error but still not getting communication.

The SD and RD on the PLC still not flashing. On the predefined

 Protocol Support Function, I am not able to access the

Debugging Support Function. Is there anything to do with the frame specs from IRROBOT?
















Share this post

Link to post
Share on other sites

Well Seems you ar5e not getting an error code in D30 so it looks like your instruction is nog being executed. Most likely becuse your using a PLS X4

Can you change this to so the PLS X4 Sets a bit which executes the instruction. Then just reset that Bit on M0.

Also can you check the timeout time in your pre defined protocol settings. Set it to 500ms or something (maybe it's set to indefinite wait). 

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now