
cantcliff
MVP 2015-
Content Count
146 -
Joined
-
Last visited
-
Days Won
4
cantcliff last won the day on November 25 2015
cantcliff had the most liked content!
Community Reputation
12 GoodAbout cantcliff

-
Rank
UniGuru
Profile Information
-
Gender
Not Telling
Recent Profile Visitors
3,408 profile views
-
Be careful using a conditional to set and reset the same coil on the same rung of logic. When the program is compiled to down to code it may not compile how you think and can give weird logic bugs. You can get conditions in the final code where the coil changes states between evaluations and you set and reset the coil on the same pass. I highly recommend separating the logic out into multiple rungs.
-
Personally I tend to group modules of a like type to prevent the sandwich issue. I also try to standardize it across projects so that I know Outputs are always certain bits and addresses. Other than that, it doesn't affect functionality in any way. Once you have the program finished, unless you've written the program to account for movement, moving modules can be a pain as it changes the addresses. I know this is worded a bit funny. It's early and I'm not fully caffeinated yet to form completely coherent thoughts.
-
Temperature controll
cantcliff replied to Edvin's topic in ...I have a project...what hardware do I need?
Keep in mind the PID loop only functions in one direction, heating or cooling. In order to handle both you'll need a logic setup to switch between two PID loops. -
Direct store problem
cantcliff replied to kikep's topic in Vision & Samba PLC + HMI Controllers & VisiLogic Software
I usually try to stick to one rung, one output. Sometimes I get lazy, sometimes I don't. The only way to guarantee your program works as intended is to do it every time. We had a very weird issue once with a PLC controller test station that popped up after a software update with another manufacturer. Turns out their compile routines changed slightly on how they processed the logic, which changed the order of the final program execution. I've also seen the same issues when duplicating programs across two different manufacturers. You are not alone. -
Short answer yes. Long answer, depends on what you want to do. Most digital inputs work on a voltage/current levels to different signal with a gap between them to prevent dither. I'll use the M91-2-T38 sourcing inputs as an example. From 0-5 volts the input is recognized as 0 (Off). From 17-28.8 volts the input is recognized as 1 (On). Between those numbers your input is floating and you can get unexpected, random results. What this means is if you're analog sensor range is a close match the two point ranges is you can "fake" a digital input using an analog sensor.
-
According to the documentation: http://www.unitronics.com/docs/technical-library/jz20-t40-jz20-j-t40_2.pdf?sfvrsn=0 You need 20.4 to 28.8 volts for the digital outputs to function.
-
Do you have the make and model of the valve? Here's my assumption right now. The valve has an input to open and one to close. If you apply a signal to open, for 1 second, and then remove signal, does the valve stay open or does it close automatically, in which case, why is there a signal input for close. In my mind, opening the valve leaves it open until you specifically send a close valve signal. My gut tells me to use the temperature as your variable to control the PID but it may have issues because you need to drive two digital outputs from the PLC for control in the
-
M90-TA2-CAN feedback control loop (PID)
cantcliff replied to Brija na max's topic in Jazz, M91 PLCs and U90Ladder
More accuracy is never a bad thing, unless it's cost prohibitive. I forgot to say above, I would go with option 2, logically it's the easiest to implement. I would probably set the P band to 100 percent for your application and see how the system responds. If it still has issues on start up, I would consider option 1. -
M90-TA2-CAN feedback control loop (PID)
cantcliff replied to Brija na max's topic in Jazz, M91 PLCs and U90Ladder
I think the solution to your problem is your startup sequence. The PID *should* turn on automatically at start up and be functioning immediately. What I think is happening. The PID loop is outside the P band, so it's going to turn the motor on full until it gets within that band. There's multiple ways to address the problem. 1) For your stop sequence try storing the current control value to another integer. Disable PID. On start sequence set the output to the control value integer you stored for a few seconds, depending on how long it takes to get spinning, then enable PID.