PLC programming with out IDE

reedb

Member
Join Date
Aug 2020
Location
west coast
Posts
5
I'm trying to find a line of PLCs that can be programmed from the command line with all human readable text file inputs (linking to 3rd party libraries without source code is OK). What I'm envisioning is a system where the input is a structured text file that gets compliled into a binary that can be uploaded to the PLC with a command line tool so the the programming environment is more like what you would see in the embedded programming world. Any product pointers or search terms would be much appreciated.

Thanks, -Reed
 
I've never heard of anything PLC related described quite as you did. Are you hoping for something like the gcc compiler for PLC?

Some PLC programming tools give API access. TIA Portal has a C/C# API (called openness) that allows you to do most clicks as API calls (including compile and download), as well as XML import/export. Simatic Manager, the older software, allowed some command line access; I think it was called the command interface.

Some PLC packages are also be able to do things like use GIT repositories, either directly or via XML files.

The whole point of PLC software, though, is to make programming be as friendly as possible for electricians (who mostly resent computers in the first place). What you're describing is the exact opposite of that, and I'm doubting you can do quite what it sounds like you want.
 
Last edited:
I can understand the need. Most PLC IDEs are horribly inefficient because one must take their hands off the key board to grab mouse, click on something then go back to the key board.


I recommend Rockwell software. It allows one to enter rungs in text. When I am programming I make use of this feature although I must admit it has been years now since I programmed any PLC and even longer since programming a Rockwell PLC.


If I were designing a PLC IDE I would make sure it could be programmed without a mouse.
 
I really do not see the point, How do you monitor the status of the program, what benefit would it give you. I once worked on a system that although had an editor as it was truly compiled (no upload), no ladder, no break points and the only way to monitor was to add addresses to a sheet to see the status of them. It really does not make sense.
 
I really do not see the point, How do you monitor the status of the program, what benefit would it give you
One way be be to use something like our event log. You specify what you want to look at and it logs or prints it out in real time.
Obviously what you want to look at be be only what is necessary at the moment or the data would overwhelm the user.


The in this example the event log is logging every 0.5 millisecond. It logs commands, transitions to the next step and what variables are set to. It can log much more.

EventLog1.PNG
 
Peter, I still do not see the point, after all, you are using some type of software to monitor ? why not an IDE, why complicate things. after all, the days of compiling code into machine code using a command line compiler are well down the list of ideal ways to create programs.
 
I'm trying to find a line of PLCs that can be programmed from the command line with all human readable text file inputs (linking to 3rd party libraries without source code is OK). What I'm envisioning is a system where the input is a structured text file that gets compliled into a binary that can be uploaded to the PLC with a command line tool so the the programming environment is more like what you would see in the embedded programming world. Any product pointers or search terms would be much appreciated.

Thanks, -Reed

I would probably start by sorting out the "online", or JTAG, interface for the debugging of said system before worrying about programming it.

The closest to what you are asking that I've seen is a system where the code is written in Java and runs on a Real Time JVM. I forgot the name of the product that enables this, but I think it's used in military applications.

The system I was working with created a web server that was the HMI for the machine, both to control and to diagnose. If I wanted to change the program, I'd upload a tarball into a specific page in the "PLC" and restart it.

Obviously, it was a pain to change the code since you had to restart it... however, it was developed by Software engineers (not PLC people) and as such everything was configurable from the web interface. I assume that it would be possible to upload the tarball from a command line, but I never explored that option.
 
I consider the ability to do maximum programming with keyboard only, without mouse, essential for any PLC development environment although the "command-line only" approach also seems like an overkill. After all the ability to do online editing with as little keystrokes as it is reasonably possible is probably even more important and this is certainly not an option with the way the OP suggests: edititng the program in a text editor, then updating via command line.

A good IDE must, IMO, include well-thought set of key combinations for virtually every operation and command in the set. If it is ST or other text-based program, there must be an easy way to type in any variable declaration statement without having to switch to a different screen area or a separate tab with mouse, and to have drop-down prompts as one begins to type the name of the existing variable... correcting the case in the process! Case-sensitive variable names may work in C, but they are just nuisance in the PLC world. If it is LD or other graphics-based program, there must be keystrokes for any kind of contacts and coils, one-shots, timers, parallel branches and any 'box-style' operator, function or command.

A good hands-on test is: how easy is it to debug and correct your program while having to hold your laptop in the palm of one hand and entering the code with another hand while standing next to a working machine in a hot, dusty and noisy production area? This is probably an extreme for the most of the controls people but it does happen and this is something many PLC software developers do not seem to consider well.

20+ years ago I used to work a lot with GE Logicmaster 90 (still DOS-based) and I was able to quickly type in the whole ladder code with just the keyboard. I have not work that much with AB and Omron devices but I know the same can be accomplished there - or at least used to be. These days I work mostly with Yaskawa MotionWorks (non-IDE version) and I can do exactly the same: type the whole ladder in barely having to touch mouse.
 
Ahhhh. the good old PG675/685, CPM based, most IDE's of the time had shortcuts either F keys or control + keys. The one thing that would be difficult is having to add a function (AOI), there is nothing easier than dragging a block onto the rung, connecting the pins, many IDE's have auto connect, start typing in a tag & it gives you a list of tags starting with the chars, why would you want to go backwards. At first in the 90's when IEC etc. came out I too was wishing for the old days, but would not like to go back now.
for example in S5 STL, remembering the A( OR( bracketing structure takes some thinking about as well as Mitsi ladder structure elements.
Then again, if you like typing rather than dragging then there is always ST.
 
The uses for such a device are endless. I could see OEMs wanting such a controller. Without the need for software development and support departments, costs could be kept to a bare minimum. This cost savings could be passed on to the customer. It would be like an industrial-rated Raspberry Pi. Eliminating the need for a high-overhead software development package would also eliminate the issues associated with OS upgrades and support.
Would this platform be something that most of us on this forum would want? Not likely. Would our maintenance departments want it? Not likely. Would it be easy to troubleshoot and modify in the fast-paced world of manufacturing? Probably not. In a cookie-cutter OEM situation, where the customer does not troubleshoot or modify, it could be desirable. It could be more cost-effective than designing a custom controller board for each product model, too. $0.02 from me to you.
 
This reminded me of the Step5 PG's that had dedicated keys for the Ladder elements.

https://commons.wikimedia.org/wiki/File:Siemens_Simatic_S5_PG_730.jpg


Hah, that was actually the same direction I was thinking, that the request was trying to get closer to how things were "back in the day."


For me personally, I definitely have some struggles with TIA Portal being sluggish some times, but I think my roadblock is still that my brain decides on the right code slower than I can enter it. I've never worried too much on trying to speed up my code entering (mouse vs keyboard, etc), because it's never the problem.
 
"Why do you need this?"
It's closer to the way I'm used to working. I already have an editor, version control system, build tools and search tools that I'm familiar with. Most IDE's in the software development world allow you the flexibility to use command line tools at any point in the process. My current PLC/HMI IDE (Schneider) seems not to allow any use of the command line, I can find documentation for any command line parameters for any of their tools. I also can't see how anything gets built or what the resulting binaries are. This makes automation, search and version control hard for me. I'm wondering if there are better PLC IDE's out there in this regard.
 

Similar Topics

Hi, There's a problem I face with upgrading the OS from XP which has the Step 7 Lite installed to windows 10. As I can't use a cracked version of...
Replies
2
Views
614
How do we decide in programming a PLC that we use comparator, timer, registers, flags, function blocks etc for any task or for any network ...
Replies
11
Views
7,468
Hello colleagues, Some time ago I started my adventure with programming. With your help and the courses, things are starting to come together...
Replies
13
Views
660
Dear All, I need a sample PLC program to count the output pulse of a mass flow meter so that a specific amount of mass (for example 100gm)can be...
Replies
2
Views
142
Hi Please I have zeilo smart relay #SR2A201BD but I don't have it's programming cable. Can I use any general usb/rs232 converter? Or need...
Replies
3
Views
124
Back
Top Bottom