lordpil's blog


vb and c++ and labview and ladder are just wrappers for microcode generators and communication protocols
k, night
in practice, a lot of the fast motor stuff seems to be fpga hardware controllers with uC interfaces

Posted by renesis at 08:02 | permalink | 0 comments


and so should any machine control company
and so should any ladder programming company
um
machine builders are system integrators
the people who make the machines should have such experts
or the ladder will be bad to
the problems youre talking about are not programmer problems
theyre OEM problems
sculptor they just made a block to do that
they could make a c function to do that
its the same
the ladder block probably runs a c function
why not?
that doesnt even make sense
they ported it to a graphical windows program
which probably took c and c++
anyway, anything you can do in microcode you can do in c
ladder is just a wrapper, so obviously an OEM can decide to make a block to do anything
c is the most standard language on earth
it is the wheel
but they can processes visual pictures?
what?
dude
the visual basic and c will end up compiling to the same microcode
a lot of the ladder programs are probably making the microcode with vb and c libraries

Posted by renesis at 07:57 | permalink | 0 comments


shit that used tree views, had diff settings dialogs, had procedures in arrangeable lists
scratch programming for industrial motor controllers was pretty cool
it was interrupt event based, so totally capable of parallel programming
the implimentation was broken, but the concept was great
i dont really have a problem with visual abstraction layers for machine control, i just dont think ladder is very good
pretty sure you talk to the controller with it
says you can read and write regs on the robot
thats basically all CNC code does
not if the OEM provides libs that dont allow it
same as ladder
cars and medical devices can kill people
and planes
asm and c
sure

Posted by renesis at 07:52 | permalink | 0 comments


your argument that c coders are cheap and ladder coders are rare is a huge business case to not use ladder
anyway, most of the hardware automation code ive supported was in visual basic, and it wasnt difficult to support with chinese comments
companies had manuals for the code
i prefer other languages
but its an actual programming language
with like, functions and variables
sometimes and kind of
ladder i used had a lot of blocks that basically did sequential code operations
also, as far as graphical machine operation, a lot of the test gear programs ive used were preferrable to ladder

Posted by renesis at 07:47 | permalink | 0 comments


sculptor: http://robotsdotcom.com/F5PCDKt.pdf
looks like fanuc has some visual basic stuff too
industry standard
ladder and block diagram coding as literally sold as a solution for people who dont want to program
labview dropdown case switches make me want to stab
i dont think that is true sculptor
the embedded c programmers i worked with were paid quite well
and it was for non critical consumer stuff
also consider that a lot of the controller code for the hardware is actually done in C
sure because ladder is dying
if a company cant find a good ladder dev anymore, theyll switch to something more modern

Posted by renesis at 07:42 | permalink | 0 comments


sculptor: automation test for manufacturing all over the world?
labview and visual basic scripting for hardware seem to be widely supported
and a lot of hardware has its own sequential scripting stuff
usually in some asm or c-like format

Posted by renesis at 07:36 | permalink | 0 comments


an OEM could just have program files that were an init function and a loop function, with very simple functions
and it would make a fuck of a lot more sense to people than ladder
what lol, art students are basically operating at the programming level of a lot of industry
and can do a lot more than a lot of techs can with ladder
ive seen bad ladder code that still works, whats your point
and you dont even know what OEM industrial libraries are
your option is calling and complaining
maybe filing a bug report
medical, automotive, consumer, mil, not running on ladder logic, tons of diff embedded system platforms, lots of standard programming languages and serial interfaces
or i can code in C or visual basic
we were using machine control stuff that has a python interface in class
wrapping your system in any code interface desired shouldnt be a problem
industrial techs and manufacturing engineers want block diagram coding

Posted by renesis at 07:31 | permalink | 0 comments


need extra precision on a variable? get fucked
?
its totally proprietary and very limited
its abstraction
there will be bugs
jero32: hes also suggesting all c code is poorly organized
like, hes making no reference to c interfaces provided by OEMs
other than saying some of them have alternative methods
you could make a c interface as simple or much simpler than ladder
and its done and is available
right
and that can be done in c
it is done in c
and ladder programs have bugs
the thing is, ladder is usually faking parallel processing on a normal processor backend
they do exist
every ladder program ive used had a c library option
my guess is thats what the program was actually translating to machine code with
arduino proves that c++ can be taught to anyone and libraries can be provided to abstract it enough to make it simple

Posted by renesis at 07:26 | permalink | 0 comments


they want something that isnt words
thats definitely not always true sculptor
thats like saying manufacturing never changes design without running it by engineering
sure in a perfect world
well the 70s is almost the 70s in terms of industrial programming
literally rs274 terminal shit
sculptor: because it sells
siemens services more industries
fanuc is basically a reference for other machiens so it makes sense for them not to change shit
cnc machines are programmed in RS274
which is basically a scripting languages
cnc machines are not programmed in ladder
if it is, its just a machine, its not a cnc machine
sculptor: again, that has nothing to do with programming interfaces
ladder isnt used to run CNC
rs274 is sequential code
its literally the opposite of ladder
i have a degree is rs274 programming, i <3 it
anything that is critical is c and asm
ladder exists because its visual
its scratch programming for industrial techs and manufacturing engineers
same with labview
and to say that you cant make mistakes in either is just incorrect
also, if there are issues, you usually cant fix them without having the manufacturer change their backend

Posted by renesis at 07:21 | permalink | 0 comments


jero32: programmers who did the UI left long ago
feels that was with a lot of industrial programs
*that way
and they make money because people have their machines running on it, and pay a guy to do labview as a fucking career
also, like matlab, they put TONS of money into getting their shit into schools
it depends on the machine
i dont think all of that ladder code is going to actual parallel processing systems
its easy to do bad shit with ladder sculptor
you could package your system with c library hooks
and have it be much easier than ladder
because ladder is proprietary and limited
yeah industry in general doesnt care as much
so they stick with what they know since the 70s
sculptor anything does the job
its not nonsense
medical, automotive, mil, consumer devices, test devices have gotten past it
techs who dont know how to program love ladder logic
because its pictures

Posted by renesis at 07:16 | permalink | 0 comments


also, a lot of advanced stuff isnt done strictly with ladder
its dont with proprietary blocks, thats maybe wrapped in a ladder block
maybe it has some sort of custom proprietary UI
you gotta call the company to find out
so they use c?
my point is industrial is behind because industrial techs and engineers dont want to learn programming
so they have very old, very simple, very incapable programming solutions
NO WE DONT HAVE NAMED VARS! WE HAVE A, B, C, AA, BB, AAA, BBB, CCC
because to them, thats easier than actually naming something what it is
thats not good sculptor
at all
especially if its abstracted by a proprietary ide
so does anything people are willing to learn
how much medical is done in ladder logic?
nico liked labview because he was paid well to do it, prob by people that didnt want to
for manufacturing test automation, working with labview was fucking hell
working with visual basic was easy as fuck

Posted by renesis at 07:11 | permalink | 0 comments


so there are timing blocks, computational blocks
its all very custom, very abstracted
right but its not the same on every system
and in the end, its abstraction
most ladder programs also have a c programming mode
i think that says a lot
jero32: anyway i think HDL makes more sense if you need the mad parallel programming
but for most shit, a controller in c could do better
?
dude hardware runs on c
a lot of ladder hardware is probably done in c
maintenance is complex for techs who dont know c
people who can read c
i can troubleshoot visual basic with chinese comments
for manufacturing automation
because programming makes sense
same with ladder

Posted by renesis at 07:06 | permalink | 0 comments


right but so does c, and visual basic, and python
the thing is, a lot of industrial ladder programmers just cant do a lot of shit
so they dont
no
its not like labview its much worse
anything can be very complex
jero32: its basically very limited digital logic/ with a graphic UI like relay logic
except stuff i could easily do with resistors, relays, and caps, i cannot do in ladder
jero32: basically every instructor cant help with ladder logic, other than basic blocks
and people who do it in industry, exclosively, cant explain much in terms of programming
jero32: its abstracted digital logic
under the hood?
or instead of gcode
sorry cnc machine is rs274 or its just a machine
jero32: it is
it is
its not a standard thing
the relay switches are standard
everything else is oem specific

Posted by renesis at 07:01 | permalink | 0 comments


but with a full analog controller, basically you just want to ramp P until you get osillation around target, back off a bit, deal with offset using I and overshoot using D
if its working right, the amp should prob be saturated most of the time in response to step function input
not on a uC at fixed sampling rate
you just add values divided by sample rate
analog, you fake it in discrete time or actually do the calculus
and a lot of engineering is about avoiding calculus
prob a ton of systems
its cheap and it works
industrial
dude these people still program in ladder logic
their programming languages are straight out of RS232 terminals for 70s hardware
its mostly because they dont want to learn programming languages
so you get bullshit like labview
like, industrial high tech is straight out of the 90s
ladder logic is limited and abstracted
its all getting compiled down to C, maybe to FPGA, but probably not

Posted by renesis at 06:56 | permalink | 0 comments


what i would do is setup the pid controller and try zigler nichols procedure
so basically, set target at 200C, and set P high enough to get oscillation, with I and D zero
then you get that oscillation period, and use it to set P, I and D with a set of known working values
you need to be able to find actual PID values, not just some user labels for knobs
with known sampling rates, it wasnt hard for me to turn the calculus into something that works on a uC
analog shit you maybe have to actually do calculus, or just pick a sampling rate

Posted by renesis at 06:51 | permalink | 0 comments


and in a microcontroller, you can fake out the I parameter by resetting it at target
its not really a strict integral function then, but who cares it works better to kill offset
https://en.wikipedia.org/wiki/Ziegler%E2%80%93Nichols_method
the math there does make it obvious that its normal PID function, but with time constants to set parameters
yeah
*doesnt make it obvious
fucking rab

Posted by renesis at 06:39 | permalink | 0 comments


so like, procedurally or just seat of the pants tuning, you usually ramp P until you get close to what you want, back off, then adjust D to keep it from responding too fast, and I to kill offset
however, youre basically going to be chasing your tail in a lot of cases
well P might just not have enough energy at low error to do anything
and if the change in error is consistent, D doesnt even see anything
so you can put I
normal PID, I stays filled when you hit target
the integral takes time to zero out, even tho the error is already zero
so at target, there is literally no P, maybe not much D, but I is still telling it to keep going
i want to do that, but hardware is expensive
i have been web coding with sneks
anyway, zigler-nichols tuning works

Posted by renesis at 06:34 | permalink | 0 comments


jero32: P controllers typically saturate and the pull back as they get close to target
they might pull back enough that they dont reach target, and have increasing integral error
so more I will help kill offset, but I reacts very slowly so can cause osillations or complete overshoot
if the P value is high, you will usually get high derivative error
because moving fast
so if error is reducing very fast, negative D, it can be used to control P gain overshoot

Posted by renesis at 06:29 | permalink | 0 comments


watermelons or bad ones?
i think we eat them up too fast for them to go bad

Posted by renesis at 05:25 | permalink | 0 comments


omg bad watermelon

Posted by renesis at 05:06 | permalink | 0 comments


Top | Add to Technorati Favorites


© 2007 lordpil.   XHTML 1.0! CSS! Site design by GNAA  Blog Engine by pbx | MULTI2 | ian hanschen | lolwat