MOVL until two inputs

  • Hi guys!


    I have to say that I am following this forum much more in last few weeks since I have started to work with YASKAWA and it was really helpfull and on most of my questions I found answers only using search engine! Great job!



    But now... I coulndn't find an answer on my problem...


    So I have a movement between two points which I wanted to be stopped with two inputs which are connected with OR logical gate. So basically, if first input is one or second input is one - stop moving and continue program. I have MX-50 with DX-200 controller which is supposed to be almost the same like DX-100.


    Any help will be appreciated!


    Tnx in advance!
    Tom

  • the mov until instruction is what you are seeking. the solution to connect one input into one is to connect them via the ladder.

  • Hi potis, this was quick reply


    I know about mov until but this function accepts only inputs. I have tried to do it in ladder but as output from ladder I can only set output addresses and mov until accepts only input addresses :frowning_face: thats my problem :frowning_face:


    In until function there is only IN#() and then I can choose Constant, Byte, Integer or Double:(

    Edited once, last by zet-jaro ().

  • choose an input that you are not using f.e. IN 100 and your 2 iputs that you want to check is IN1 and IN2.
    you need to go thethe ladder programm and make a logic for IN 100 to be on with IN 1 or IN2. then in the mov until you need to use the IN 100.


    the other solution is just conect your 2 input signals to IN 1 and use it in the until command. this way is easier but you will not know what came on.

  • I have tried that also but when I press compile, I get an error that I have inputed wrong Relay No. :frowning_face: in ladder he only accepts setting Relay No.'s from outputs :frowning_face:


    I cant connect together this two signals because later in program when robot stops his movement I have made two IF loops which are dependent on this signals... if signal1 is activated - then rotate for 10degrees, if signal2 is activated - then rotate for 6 degrees.


    I really dont know what else to try, in ABB its so much easier :frowning_face:

  • itis very easy if youknow what to do. do you have the concurrent manual?
    at first youmust break the group that IN100 is into. Delete the group line and create 8 separate one for each bit. then on the line that you need to change insert the numberrs of the IN 1 and IN 2.you can see the corresponded numbers in the concurrent manual or in the group line that it comes from.

  • Ok, after I have read your post several times to understand what you want me to do, I think i finally understood :toothy9: me -> :fine: :fine:


    I have Concurrent IO for DX-100 from here http://www.robot-forum.com/rob…y-list/msg17889/#msg17889
    for example, lets say I will set address #00100 on 1 when one of mine input signals are 1...
    this #00100 is IN#0073 and it belongs to IG#010 which I cant find in this PDF (or its relay no.) so according to that, I have problems finding it in Ladder diagram. one more question: should I look for it in User Ladder or in System Ladder?


    Thank you very much! :merci:

  • ok let me do this clear. when i mean group i mean in the ladder programm you will see an instruction GRP with 2 numbers. this is a group in the ladder programm.


    for the first 8 inputs this is with numbers #20030 and #00010. this GRP instruction is:
    20030-->00010
    20031-->00011
    ...
    20037-->00017


    is this clear? now lets say that you want to interconnect the INPUT 100 with INPUT 1 and 2. First you must find the instruction that reffers to IN100. this is the GRP with numbers #20160 and #00130 and is for in 97 to 104. what you need to do is delete this instruction and insert 8 instructions of the simple lines. if you compile it will be ok. so far with this change nothing has been made you have just written the ladder differently. Now find the Input 100 which is the relay 00133. in this line insert in the ladder the 20030 and 20031 and then compile.


    job done

    Edited once, last by potis ().

  • yes, I understand what you mean but in my controller relays that start with #2XXXX are associated with external input :frowning_face: when I open my LST with MLadder, I have inside GOUT blocks but there isn't any that starts with #2xxxx, I have only for example #76xxx or #75xxx or #56xxx...


    also I have two ladder diagrams, one is User Ladder and one is System Ladder. Above I said for User ladder

  • I would do this using 3 inputs.
    Signal 1 connects to IN1,
    Signal 2 connects to IN2,
    Both signals are connected to IN3 via 2 simple 1N4007 diodes, making a wired or.


    but this solution is possibly to simple, is it?

  • There is an easier solution.


    Get two DPDT 24 volt relays. Wire your current sensors to the coils of the relays. Use one N.O. of each relay to the inputs (this will make the system work exactly as it is now) and then wire the second N.O. contacts in series to an unused input. This input will only come on if the two sensors are on.

    Robodoc


  • There is an easier solution.


    Get two DPDT 24 volt relays. Wire your current sensors to the coils of the relays. Use one N.O. of each relay to the inputs (this will make the system work exactly as it is now) and then wire the second N.O. contacts in series to an unused input. This input will only come on if the two sensors are on.


    Maybe easier but more expensive. Why doing it so when we could simply do it in program? Doing this task in hardware way you also lose oportunity to filter sensors outputs independently.

  • Hi ,
    If you don't know how to use the CIO ladder and want something cheap and fast (less than 5mins) connect a diode ( typically IN 4001) on each line and connect to the same input , connect diodes direction for
    the controllers ,
    PNP ( Euro standard) ,
    NPN ( Japanese , North American standard)

Advertising from our partners