From flowchart to ladder

From flowchart to schematic to ladder
I can design machine control circuits using relay logic but it's a grueling job for me. I don't do it often enough to be proficient.
Typically, my circuits have 8 or less 344PDT relays with about as many switches and as many outputs like valve coils and such. I can do a flowchart in minutes but can't easily translate to a schematic.
We only have a couple of PLC controlled machines. I did the flowcharts and hired a company to do the programming. I would very much like to become proficient at doing the whole job in house. I can think of a number of applications that using PLCs to replace relay boxes would be very beneficial.
I use a bunch of stuff from "Automation Direct" and I've been looking at their "Click" line of PLCs. They seem inexpensive and powerful.
So, how do I get from flowchart to Ladder programming?
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
On 4/23/2012 5:34 PM, Tom Gardner wrote: ...

<http://engineeronadisk.com/V2/book_PLC/engineeronadisk.html
--
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
On 4/23/2012 6:56 PM, dpb wrote:

BTW, I ran into the fellow who wrote this at an Embedded Systems Conference in SF/SJ quite a number of years ago...
<http://claymore.engineer.gvsu.edu/~jackh/
He's on faculty at Grand Valley State U in Michigan...
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

There are lots of other languages that might be suitable, such as function block, structured text, and phase diagrams. Ladder is my least favorite, but might be the best choice for your case. AB's phase diagram programming was undergoing some changes about the time I retired a couple years ago. I did a lot of AB and some Siemens.
If you can do the flowchart, you've done the tough part. Describing exactly what you want the program to do is a large part of the work. Still, I found it more and more difficult to focus while programming after the age of 55 or so. Before that, if you came in my office while I was working, I probably wouldn't hear you or notice you at all. I'm a lot easier to interrupt these days.
Pete Keillor
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

I was a machine language programmer when I was first thrust into the ladder logic world, and it was a rough transition.
My path was eased when the team decided on a PLC with an event-triggered BASIC language extension capability. I don't have experience with many different PLCs, but from what I've seen, most of them offer some such ability.
It allows you to place the most fundamental cyclic state checks in ladder, and do the nitzy (and perhaps arithmetic-based) control in the 'higher' language.
In the case of the BASIC I was given, it was severely crippled, and required that I write my own floating-point math package to support the precision of work we were doing.
The learning curve was pretty steep, but short.
LLoyd
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
I'll chime in on this PLC thing. I have a lot of experience using different different computer languages to control equipment.
I always found PLC ladder logic to be difficult and arcane. I do know the folks that do this can whip out a control program quickly.
If you don't have a fella with great aptitude for this sort of thing in house, I'd hire it out. An expert will charge ya, but it will be worth it.
Karl
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
On 4/24/2012 5:27 PM, Karl Townsend wrote:

I'm at the age where I feel the need to challenge my brain to keep it functioning. What control scheme would you learn if you were in my shoes?
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Both, Tom. It's the only way I stay at "medium alert" as opposed to just plain "old and dumb"! I'm learning on an Arduino chip now, as an alternative to PLCs.
Lloyd
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
On 4/24/2012 6:13 PM, Lloyd E. Sponenburgh wrote:

I think I'm going to dig into the Arudino as well. The Propeller is a hell of a lot more powerful processor, but you don't always need that.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Richard wrote:

The Aurdino family has a lot of boards to chose from, and there is at least one website that shows you how to convert one of the super cheap Aurdino proggrams into a controller by cutting a few traces, and adding a few jumpers. Those boards are under $10, and sometimes under $5.
'USBASP' or 'USBISP'. I have the articles saved on a backup drive, but I can find the links or email them to you.
--
You can't have a sense of humor, if you have no sense.

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
"Lloyd E. Sponenburgh" wrote in message

I found some good PDF files for Arduino, mostly just searching Arduino PDF.
I'm learning more useful Arduino programming with the gnu-c-manual.
I used to write ladder type rungs with the if() statement, now I kind of like:
Output = (((A && B)||C)? 1:0) ;
instead of:
If((A && B)||C) Output = 1; // If (A AND B) OR C, Output is turned on else Output = 0; // else Output is turned off.
Seems like an interesting little shortcut.
I was able to use pointers to structures to use one function with multiple sets of data, I did PLC style timers with each instance of the timer having it's own data so I can set multiple timers.
I'm not very good at it but it's been fun learning.
RogerN
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
"Lloyd E. Sponenburgh" wrote:

Have you looked at at Aurdino G-code software?
--
You can't have a sense of humor, if you have no sense.

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

No! Tell me more!
Lloyd
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
"Lloyd E. Sponenburgh" wrote:

I'll have to look for the websites again, but I was looking for 'Aurdnio+CNC' when I stumbled across a reference to it.
--
You can't have a sense of humor, if you have no sense.

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
"Michael A. Terrell" wrote:

Here are some links to get you started:
http://hackaday.com/2010/07/21/cnc-hardware-stream-g-code-to-an-arduino /
http://reprap.org/wiki/Arduino_GCode_Interpreter
https://sourceforge.net/projects/cncarduino /
http://www.contraptor.org/arduino-gcode-interpreter
<https://www.google.com/search?q=arduino+g+code+cnc&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a
--
You can't have a sense of humor, if you have no sense.

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Thanks,
One of those (other links, too) really shouldn't be too hard to re-write to a full RS274 version!
LLoyd
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
"Lloyd E. Sponenburgh" wrote:

'Open Source', or for profit?
--
You can't have a sense of humor, if you have no sense.

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

'pends upon your priorities, no? <G>
LLoyd
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
"Lloyd E. Sponenburgh" wrote:

My priorities are new roofs for the shop & laundry building, and keeping up with repairs around the house for the foreseeable future. Things go to hell when you can't do anything for a couple years. :(
--
You can't have a sense of humor, if you have no sense.

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

I'm gradually working toward trying to make a library of functions to make it easier to write PLC type programs in an Arduino. This will allow the Arduino to control several things at once instead of doing one thing at a time. I think the correct name for it is non-preemptive multitasking. The loop runs through continuously as fast as it can, like PLC scans, and conditions control the sequence. So far my biggest "PLC like" addition is a time on delay. I also made a counter function using the same data structure type as the counter. Anyway the timer is a single function that can be called multiple times using a different timer data for each event I'm using a time delay for. If I want to read a sensor every 0.1 seconds, read another sensor every 5 seconds, and update the display every half second, no problem.
I got my load cell scale working pretty good so far but still have several things to add. For one l only have it displaying in decimal pounds, I want to add units later. I'm wanting to be able to plug in different load cells to this scale display depending on what I'm wanting to weigh. Once I get a load cell set up and calibrated, I want to be able to name that load cell data structure an appropriate name and save to eeprom. Then if I change scales I should be able select the load cell data name from the display and load the relevant calibration data and is should be ready to go.
RogerN
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here. All logos and trade names are the property of their respective owners.