Search the Community

Showing results for tags 'ladder Diagram'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Found 78 results

  1. I am trying to use Reusable files, but it is greyed out. Is there a setting that needs to be enabled to activate it? I am using CX-Programmer v 9.74 Update 1: Apparently, when you create a data structure this gets greyed out  
  2. Array A INT[32] Array Index B INT Destination C INT I am trying to move an Array (A) Element (A[2]) using a symbol (B) in ladder into a destination symbol (C) C = A [ B ] Result: ERROR: Array Index of Operand 1 out of range at rung 1 ( 6, 0 ).  The documentation suggests that it is possible, but I am unsure if there is something I am doing incorrectly. Note* Fixed indexing works with no errors Is there another method to accomplish this?   PLC : CJ2M CPU31 CX- Programmer: Verion 9.74 Update 1: If I go online to the PLC It does look like the array look up is working. Is the issue with the mov block? Update 2: I changed the memory locations which has caused a different error to appear. This error is clearer but does not explain the manual excerpt I posted further up ERROR: Only the constant can be specified for the index of the array.  at rung 5 ( 6, 0 ).  Update 3: Solution 1 I managed to hack together a proof of concept using pointers and indirect offsets  Update 4: Solution 2 For some strange reason things work as expected inside of the function blocks so I made one where the array is In-Out and with an input and output respectively. Note* External reference to pointers inside of the function block produced an error. Function block Logic     Update 5: Solution 3 Now I feel like I am going crazy, I tried just the original code again and it works... I have no idea why and if it was not for all the documentation I would be lost as to why it works now... Update 6: Conclusion It seems to have array indexing work the array index must exist in the D Memory Block. The reason it did not work above is because I somehow had a MOVR block when I tested after moving all the variables to the D Memory Block. I hope this journey helps someone else :)
  3. As the industry of plc and scada softwares continue to integrate more and more programming languages into their IDE, what is the most common language that should be learned by controls engineers (excluding Ladder Logic)?  I mainly use Python and VB for scripting but I am curious what languages other SCADA and PLC programming environments use. Should I be sticking to a specific language and learning it well or just know a little bit of them all? Let me know your thoughts!!
  4. Newbie in the field of Automation here! I have a waste water project that requires operating 6 pumps to empty a sump. The water level in the sump is being monitored by an analog ultrasonic sensor. The analog range is divided into 5 levels; level 1 being the lowest and level 5 being the highest. The way the pumps operate is analogous to the water level, i.e., 5 pumps will run at level 5, 4 pumps will run at level 4, 3 at level 3, 2 at level 2, and only 1 pump will run at level 1. The sixth pump is used to run the pumps sequentially and that's where I need help. Basically, the pumps can not be assigned to a certain water level as this would result in the pumps at the lower level run way more as compared to the pumps assigned to higher levels. The pumps need to alternate so as to keep the running hours of each comparable. Another requirement is that say if pump 1 turns on due to water level rise and then turns off due to water level fall, and again if the water level rises, then the next pump should start instead of pump 1, and so on for the rest of the pumps. Also, if one pump goes on some kind of fault, the 6th pump comes in and runs in its stead until the fault is reset. I'm trying to come up with a ladder program to make all this happen but hoped that I could find some help online. I feel like this is a common project and there should be someone that can give me the proper solution. With thanks, Aafaq.
  5. Output polarity selection

    Hello to everyone. Nice to meet you all. How are you? I hope you are doing well. I’m developing a program with the purpose of make something similar to a pulse train in the output. However, sometimes I need the output to be a “positive” pulse and sometimes a “negative” one. By positive and negative I mean the polarity in relation to the pulse train source. I’m trying to use a pair of bits in order to switch between the two choices of polarities. I attach a simplified version of the ladder diagram I’ve made. When I thought about the logic, it seemed logical to me, however, it isn’t working as supposed. SM0.4 is a pulse train source. According to the software manual, it is a pulse train with 50% duty cycle and a cycle time of 2 s. That it to say it says at TRUE for one second and return to FALSE for another second. I assign the value of that variable bit to the M0.0 memory bit. I get the negative version of the pulse train logically negating it in the Network #2.                 I assign the value of two inputs, I0.0 and I0.1, to other two memory bits, M0.1 and M0.2. ·         When both inputs are in a FALSE state, the output stays FALSE, disregarding the state of SM0.4. (Case #1) ·         When I0.0 is TRUE, M0.1 is TRUE. However, Q0.0 stays at FALSE no matter SM0.4 is TRUE or FALSE. I attach a pair of pictures. (Case #2) ·         On the other side, when I0.1 is TRUE, M0.2 is TRUE. In this case, the output shows the correct behavior. It is the negated version of the pulse train source. (Case #3)                 Has any of you experienced something similar? Is there a better way to execute my purpose?                 I’m not executing the program, just simulating it with KincoBuilder from Kinco. However, it has always worked fine for me. Thanks for you attention. I look forward for your responses. Kind regards!
  6. Hello Dear Engineers; I am a PLC beginner learner, so please do not my my question as it sounds little ignorance my question is; how can i insert two output instructions in parallel but from the same input instructions. kindly check the drawing attached, the problem i can not find the right tool in my RSLogix 500 software.  please help me and i do highly appreciate that.   best regards,  Kevin 
  7. Hey, (Programming a M224 with Machine Expert Basic) I'd like to get some input from you guys about a logical task: I have 8 contactors controlled by my PLC outputs, they heat a water boiler. throughout my operation, I require a different amount of heaters (I could move between 1-8 heaters in a single operation) I would like to scramble what contactors I put in use every time I start an operation, in order to not constantly use the same heating elements and wear specific ones out. For example, in the first stage of heating I will use contactor #1, next time I start the operation I would like to use contactor #2 and so on.. How would you approach this problem? SBR? Timers? Thanks
  8. Mitsubishi Fx2n Modbus rtu vfd

    Hello everyone, may you all bless with the best. Can anyone please help me on connecting and programming In Modbus rtu INVT CHF-100A vfd with FX2n having rs485-bd module. I want to connect 11 vfd and one fx2n plc also .
  9. Mitsubishi Fx2n Modbus rtu vfd

    Hello everyone, may you all bless with the best. Can anyone please help me on connecting and programming In Modbus rtu INVT CHF-100A vfd with FX2n having rs485-bd module. I want to connect 11 vfd and one fx2n plc also 
  10. Hi, Could anyone help me out on how to extract the digits present in a string in sysmac studio... Thanks in advance !!!
  11. Problem failed to start ladder engine

    Hello my brother and sister at this forum, please help me, my problem is after i make ladder diagram and iam click button simulation -> Work online simulator ( CTRL + SHIFT + W ) then appear warning  "failed to start ladder engine", what a problem?? thanks before
  12. PLC Scan of Rung

    According to picture 1, ''Piston A moves to the right. After the set time, K = 4, the normally closed timer T450 contacts open and the normally open timer T450 contacts close.'' But according to picture 2 After the power flow from Left power rail to right power rail, it should directly go to 2nd rung and cause the normally open timer T450 contacts to close only right? but why it will go back 1st rung and cause the normally closed timer T450 contacts to open? Anybody can help explain me regarding this. Thank You in advance
  13. Unconverted Ladder Code?

    Hi All, Please see attached screenshot: Whenever I want to save the ladder program or start simulation, this window pops-up. If I press 'yes' I loose the whole work. I tried to open existing program and modify it, but it did the same. When I clicked 'yes' I lost all modification and just the original program remained. (I made the program in the morning, opened and saved many times but it started popping this window later.) I work with FXCPU series, FX3U/FX3UC type, simple project in ladder. This worked well but now is not anymore. I use Melsoft GX Simulator! Can anyone advise why this is happening? It is very annoying! It is pointless to work on anything now! Many thanks
  14. Crane Positioning

    Hey folksI'm trying to make a Ladder program in Sysmac Studio to control a Crane.The crane gets via a HMI a position that it must drive to, first at high speed then in low speed this is controlled via encoder signal for fine positioning there are several sensors.For all this I have an NX1P2-9B24DT1, NX-EC0222 and 3G3MX2-A4030-ESomeone here who can help me with an example of how this can be done in Ladder.Many thanks in advance for your help.
  15. Hello everyone, I am new to PLC programming and will start working on Allen Bradley PLC. I have an experience in computer programming languages. Will learning ladder logic be a better option or starting with structured text as i have some knowledge about the syntax and programming of structured text?
  16. Hello!   I have a humidity sensor 0-10v and his measurepoints is for 10 to 90 humidity %. Using the Analog Amplifier, I set his measure range but theres a problem... he's only givin me integers numbers, and I need the decimal one's to. On the Analog Amplifier, with that range the program says that the gain on the measure is 0.08 for each number on the analog input, theres a way to see that decimal places? I tried increasing the measure range to 100-900 and set the decimal case to 1 but the gain turns to 0.8, with that I just can take jump number like 10.8->11.6->12.4. How can i do this on the way that I need? It's an LOGO 8! After setting measurement range from 100 to 900:
  17. So I have a plc program where most of the outputs are based on a counter that goes from 0 to 1000. The counter speed is adjustable and is generally set to run through a full cycle (count from 0 to 1000) anywhere between 0.5 to 2 seconds. The problem is, when I try to energize an output by using an EQU instruction, it will almost always skip the count because the scan time is not fast enough. I've been using a LIM instruction which has been working, but its not quite as accurate as it needs to be. I switched the counter logic to be continuous to try to make it faster which made it almost perfectly accurate... But only in the continuous task; it made the other periodic task significantly less accurate. I was curious if any of you had any tips on how to remedy this or just general help. I am still relatively new to PLCs and ladder logic so any advice would be awesome, Thanks in advance! Edit: The purpose of the counter is to cycle through from 0 to 1000 over and over again. My outputs actuate during a certain interval within this cycle (For example I would say actuate from 300 to 800 and it would stop and end once it hit those values via an EQU or LIM instruction). I wrote the logic as follows: First I calculate how many cycles per minute I want to perform, using that value I calculate how many times I want to increment my counter per millisecond. Then a timer is given a preset of the total cycle time. While that timer is running I continuously multiply the timer's accumulated value by the "cycle count per millisecond" that I calculated earlier; the resulting value is the current count that all my outputs are based on... Hopefully that makes sense, I know it's not the best but I could not figure out a better way of doing it and I know rounding is certainly making the accuracy worse. My hardware is: Allen Bradely PLC (5069 l306erms2), 5069-ob16, 5069-ib16, and a Kinetix 5500s2 Driver for my motor(s)
  18. Hi there, I am fairly new to programming serial communications, especially with Mitsubishi PLCs. Can someone walk me through in ladder logic how to bring in ASCII to the PLC, store the data in the data registers. Then send the data out to another PC once an 'X' input is satisfied? ASCII code would go like the following: C2,0,1,123,2,ABC,3,456,CR
  19. Hi guys, I'm new in the forum and I'm quite new also in Sysmac programming, in ladder programming at all, to be honest.   I have some years of experience in programming CNC machines using C, on a owner platform. most of the functions I was using there were developed using "step sequences order". I mean, I had functions continuosly running where I was able to control the steps,  using the switch/case contstruct, and pass to a step to another just changing the reference variable. To be more clear, something like this:   functionStep = 0; switch (functionStep)   case 0:        if !(somethingToDoHereIsDone())                      break;       functionStep = 10;   case 10: .... and so on.   In the Sysmac programs I was able to see, something like this is possible to perform using register and AryShiftReg function. but I find it's quite complicated to manage if I want to insert intermediate steps in a second moment and most of all let an external part of the program to know in which "logical step" I am in my function.   Can you suggest me, in your experience, how can a sequencial function can be defined in Sysmac?   thanks a lot for your help.            
  20. Hi there! I recently discovered this forum and I find it pretty useful for sharing and learning about PLCs. The thing is I'm trying to make a Stack using the SSET(630) instruction in a CJ2M PLC. Reading Omron's W340 manual I saw that PLC memory address for the different stack channels is represented as "00010000" to "0001000F". So, in order to set the last stack word address as well as the pointer's address, how do you know those values? Or am I just misunderstanding something? Thanks in advance!   Edit: Solved, the definition of the stack was wrong!    
  21. Hi guys, since this is a forum for people starting out with TIA Portal, I would like to share with you my course that I developed for the last 6 months.  This course uses a real-life sample application and translates it into a fully functional TIA Portal PLC application.  This course of 2,5 hours consists mainly of video explanations with practical programming assignments to put your newly gained knowledge straight to work.  As a controls engineer, I have over 10 years of hands-on experience with TIA Portal ranging from software development, commissioning and troubleshooting. At the end of this course, you´ll be able to: Structure and program a real-life user application in TIA Portal Download and Troubleshoot a TIA PLC application Program function blocks (FB) using ladder logic Build global data structures using user-defined-data-types (UDT) and data blocks (DB) With the coupon link below, you can enrol for only $12.99 (might vary depending on the country you live in).  The course is normally $99.99, so you get an amazing all-round programming package for almost no money.  So go and check it out  Take me to the Course Now!      
  22. Did you always wanted to get started with Siemens TIA Portal programming, but you were never sure where to start or how to get the best performance out of the platform? Eager to upgrade your TIA skillset from an instructor with over 10 years of TIA experience in the field?   -> Then this course might be just for you! My course "Siemens TIA Portal - PLC Programming Basics" will take you through the steps of creating your very first TIA application - from structuring (very important!) and programming your application, to downloading and troubleshooting your application online.  The course is based on video lectures and is around 2.5 hours long, and consists of 40 lectures divided over 6 main chapters. The enrolment fee is offered at a huge discount at the moment, so take action while it lasts! Take me to the TIA Portal course, I´d like to check it out...   Thank you, and I hope to see you inside the course! Hans
  23. hmi nt600m-dt211

      Hello! I have a problem with older equipment and I have to copy the data from it To connect to a hmi omron modelNT600M-DT211 what type of software should I use and if possible the connection scheme between hmi and laptop. Thank you!  
  24. Control Panel

    Is it possible to view the values / states of all inputs, outputs and workbits (e.g. 64.00 through 64.15 on Omron CQM1 PLC) on a single screen or control panel within CX-Programmer software?  I'm trying to troubleshoot some ladder logic that I wrote and need to know the values of 5 or 6 inputs/outputs/workbits simultaneously.  Having to scroll up and down through my ladder logic repeatedly does not work well with code that changes state every 5-10 seconds or so. Any help is welcome.
  25. Q03UDVCPU

    I am new with PLC's and I am learning how to work with GX Works 2. I have two questions, 1st Question: Using a Q series PLC (Q03UDVCPU) Is it possible to convert the language of a project from ladder logic to structured text? 2nd Question: If I read a project from a PLC why is it always ladder logic? Is there any way to read out structured text?