… and I also do PLC programming.
Is Manufacturing Dead In Canada? Not so!
Changing Landscape of PLC Programming
Should PLC Programming Software Be Free?
– Manufacturers make money off of the hardware. The dedicated software to program the hardware that they are selling should be free. If other software like SCADA (Supervisory Control And Data Acquisition) is available, then charge for it only.
– What do you think?
As much as I’d like to say “yes it should be free” so I could get hold of it, I think it shouldn’t be free.
A software engineer could set his business up and offer PLC maintenance/programming/updates, etc and not have to purchase any licences. The PLC manufacturer loses out. Every man and his dog with a little experience sets up as programmer, driving down experienced programmers prices, and making a mess of the task!
It’s a tool required for a skilled person, and shouldn’t be freely available for anyone to obtain.
Why it shouldn’t be freely available to everyone? I don’t see a problem if for example I as student would have an access to it for free. I lot of software today is freely available for students. Take for example Visual Studio Community edition.
I am an electrician. I have done lots of ddc controls installation, mostly Delta, which is an amazing product.
Automation Direct has always reached out to electricians with abundant knowledge and affordable equipment. I am grateful for the years of seeking my attention. Still, many electricians do not take advantage of the ease with which they could pursue new knowledge. Many still need clear instruction on how to install the devices associated with automation, let alone operate or program. I can’t imagine the ways an IT engineer with little mechanical aptitude could screw up a system in good working order, but I know they do this regularly with hvac controls… Lol
I do know manufacturing plant electricians are super good at plc’s though, fwiw. Each plant seems to have a couple genius grade mechanics who are good at everything from programming to wrench turning. They all seem to be ex-navy nukes fwiw. If free software helps this kind of tech, I am all for it.
Yes, some software should be free. High cost of some software I believe is counter productive to a low cost PLC . Not everyone uses a PLC for plant or production work and can roll the cost over into a project. Many hobby type people, like myself, benefit from small PLC units and free software, like the Click and BRX.
Originally, I purchased a Click because of the free software. Now, I have a BRX for the same reason. If they didn’t have free software, I would have looked to a different PLC or micro.
Web content is free as long as you view the ads which create revenue for the developers.
We want our industrial control environments to be robust. We want the developers to be qualified, responsible professionals willing to take responsibility for their products. Can this be accomplished by not charging for software and support? Do you want pop-up ads on your HMIs?
Interesting point of view.
Thanks Joe
Garry
Dear Sirs
I am trying to test the Modbus Datalogging Program. But I am always receiving ‘Database error’. The Access database is saved in a folder in the C drive. I am using Windows 7 pro SP1 64 bit to run the VB program and database. PLC connection is OK and registers are being received and displayed on the form. Please help me to find out the reading.
Hi Sukumaran,
https://accautomation.ca/now-you-can-have-robust-data-logging-for-free-part-9/
The above post has the code using VB6 to and access database to store the information.
Can you provide the following information:
Visual Basic 6 or VB.Net?
The location of the access file and the format that it is saved in.
Here is another post using VB.Net and Access:
https://accautomation.ca/creating-a-hmi-login-screen-on-advancedhmi/
Sometimes looking at different code may help.
Let me know how you make out.
Thanks,
Garry
Dear Garry
Thank you for the reply
I am using Microsoft Visual Basic 2015
Now I face a different problem: The program connects to the PLC when started. But gives an error : ‘An unhandled exception of type ‘System.IO.IOException’ occurred in System.dll. Additional information: Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host. ‘
What I should look for? I am using Siemens S7 1200 PLC
Hi Sukumaran,
What I would do is is close the connection after the information is read. (Example: Winsock1.Close) This would then allow the resource to be used someplace else. Each time the information is read the resource can then be opened again.
Let me know how you make out.
Regards,
Garry
Dear Garry
Attached a screenshot. Please go through and help me since I am quite new in VB
Dear Garry
I have downloaded the following: ‘Download the access database and the Bin directory for the AdvancedHMI login screen.’ Could you please explain me how to create the AdvancedHMI project using the Bin directory?
Hi Sukumaran,
Here is a post that will help you set up AdvancedHMI and visual studio.
https://accautomation.ca/create-a-plc-with-hmi-training-and-learning-environment-free/
Once you are familiar with AdvancedHMI, here is a post on deploying the project. This will explain the BIN directory.
https://accautomation.ca/deploying-an-advancedhmi-project/
Regards,
Garry
Dear Garry
I have gone through the link ‘deploying-an-advancedhmi-project/’. Could not find procedure to use the bin directory. Please help
Hi Sukumaran,
I am not understanding your question. What do you want to do with the bin folder? When you deploy an AdvancedHMI project you just copy the folders to the computer that you want to run AdvancedHMI and look for the folder in the BIN\Debug directory. This is usually the AdvancedHMI.exe file.
Regards,
Garry
Dear Garry
Thank you very much
Hello,
I am a beginner on PLC. I would like to learn as much as i can.
Can i get help with basic PLC Software for starters.
Would really appreciate.
Hi Amaka,
Thanks for visiting our website. I would suggest the following page of our website to help you with learning about PLCs.
https://accautomation.ca/programming/plc-beginners-guide/
This will assist you in learning about PLCs without spending any money on hardware or software.
Let me know what you think about the content Amaka.
Regards,
Garry
I am a programmer with 30 years of experience. But I am new to PLCs. It is my task to choose a PLC technology for a major project. While I’m sure I will be able to find plenty of advice, I would prefer to have some hands on experience before I seek that advice.
Charging for development software will make my job harder. But in a larger sense, it just puts up barriers to new programmers. I would submit that it’s in the PLC makers best interests to have plenty of skilled programmers out there to write code for their hardware. Increasing the cost of entry to PLC programming is just choking off the lifeblood of the industry.
I had this same type of experience with Tandem computers. Tandems were great computers but Tandem viewed their manuals and training as major profit centers. Training back in the ’80s averaged about $1000/day so training was hard to justify. The manuals were expensive so many companies made their programmers share. As a result, there was a lot of really badly written Tandem software. You haven’t heard of Tandems? No surprise. Programmers were hard to find and the market looked elsewhere.
Thanks for your input Roger.
I feel the same way.
Garry
how to program a pressure transmitter, range -1 to 3 kg.
Hi Maninnder,
Pressure transmitter outputs are analog. They are usually a 4-20mA signal but could be 0-20mA or 0-10VDC. You must refer to your product specifications.
The output would be wired to the PLC through the analog input unit. Here are a few examples of using different PLCs.
https://accautomation.ca/create-an-analog-voltage-input-tester-for-a-plc/
At the end of this post, you will see analog wiring to a Click PLC and an Omron CP1H PLC.
https://accautomation.ca/brx-plc-analog-io-system-configuration/
This post uses the BRX PLC analog IO.
I hope this helps you out.
Regards,
Garry
Y= mx+b for scaling analog PLC signals. You will just have to know what the system you are working on is using for raw input data. Such as 32767 for integer.
Dear Garry
Thank you very much for this useful web site l read some comments that says “I think it shouldn’t be free” and they say some unconvincing reasons.
NO it is not “shouldn’t be free” there is a lot of beginner who need to be pushed to the forward and you help them and I am on of them.
thank you for everything you are a great person .
Im curious about using the json function in the brx plc to except json GET operation to trigger coils?
If you have any insight or a video explaining the basics of receiving json request from another device, Im really Interested in finding out more.
The backstory…
Basically I need a brx plc to mimic a “Control by WebRelay” thats currently installed on a sit. I have permission to remove this device with the exception that what ever replaces it has to use the same “drivers” i.e. the GET operations.
This restriction is do to three other automation systems each managed by different people and organizations are triggering the same relay.
Im sure by now you see the issue already.
Two systems talk modbus TCP and the other only communicate using HTTP using GET operation. In turn when the WebRelay receives a modbus ON command it overrides any HTTP commands and causes all kinds of issues until someone from one of the other organizations can call and have someone resets one of the modbus coils from another organization.
So my plan is Id like to swap out out the webrelay with a brx plc so I can mediate between all the systems.
Thanks.
Hi Mumbles,
Here is a post on the JSON HTTP instruction in the BRX.
https://accautomation.ca/brx-plc-http-json-instructions/
Your other option may be to use MQTT. Here is a post explaining the MQTT to the Click PLC.
https://accautomation.ca/stride-mqtt-gateway-click-plc-modbus-rtu-tcp/
Just a thought.
I hope this helps you out.
Regards,
Garry