How can I check output to SERVO motors in ladder logic on GX developer.

3 posts in this topic

Hi everyone, 

I am new to Mitsubishi PLC. I am trying to see from where Run or speed commands goes to Servo. I have MELSEC FX2M-32MT with FX2N-1PG cards for the Servo and I am using GX Developer 8.91v 

Also, I would like to mention that initially I found out that BATT V light was lit so here what I didi.

>I replaced the battery within 20 second while powered ON. Before changing the battery I took upload of the program successfully. 
>I have cleared PLC memory and re downloaded the program. 
> Checked Memory addresses M8005 8006 both are Low. 

Now, when I am trying to run  my machine it is not giving output to two Servos while a conveyor operates when started from the HMI so it means program is inside PLC, right ?

Program is attached if someone wants to have a look. 

labeling mc 300322.rar

Share this post

Link to post
Share on other sites

The manual for the FX2N-1PG should have a program example and you can search your program for similar code.

Share this post

Link to post
Share on other sites
On 28/03/2022 at 8:41 AM, glavanov said:


The address offsets are correct as the image in post 1

Hello RedViper,

According to your description, it looks OK the procedure you did. To ensure that the program was correctly loaded in the PLC, you may open GX Developer, go to "Online" > "Read from PLC" and try to read the program again.

The best way to check if the program is really running accordingly is to monitor the program that is in PLC memory.

I checked your program and, apparently, you have 2 units 1PG installed, in positions K0 and K1. As I could realize from the program, 1PG modules are working in "Interrupt Single Speed Position Mode". In this mode, the servo movement is started by bit 9 of BFM #25, in speed mode first.

I could detect that your program uses bits M9 and M209 respectively for modules K0 and K1, for starting the servomotor movement. These bits seem to be turned ON by interruptions: in the case of M9, interruptions I10 and I20. These interruptions are triggered by two high-speed counter comparison instructions HSCS, connected to counters C235 and C236.

Long story short, my recommendation:

1- First things first: I know it may be obvious but make sure your PLC is really running (RUN LED is solid lit). Sometimes we neglect the simplest thing and this may be the problem. Check also if 1PG module is not in error (ERR LED in 1PG module is not lit). If 1PG is in error, you must check BFM #29 and see what is the error. Follow the potential error causes;

2- Monitor counters C235 and C236 while the encoders (which may be mechanically linked to the conveyors you mentioned, check it!) shafts are spun. If those counters are incrementing while the conveyors run, it is a good sign; if it is not incrementing, you will want to start looking at what may be wrong with those encoders, including if X0 and X1 (encoder inputs for C235 and C236) inputs are blinking when spinning the encoders slowly;

3- If it is all OK with the encoders, look at HSCS instructions, if the HSCS setpoint registers (such as D316 in your program) have correct values for triggering the interrupts (the value must be one that the C235 may reach and trigger the interrupt);

4- If the HSCS setpoint (such as D316) is good for the C235 to reach it, and C235 is actually passing through it, so interruptions are probably being triggered. Check if D302 has a value different from zero. It is the pulse train speed to be sent to servo drive;

Important to have the manuals to follow the steps above:

FX2N CPU Programming Manual: 

FX2N-1PG manual:


2 people like this

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