• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to footer

Motion Control Tips

Automation • Motion Control • Power Transmission

  • News
    • Industry News
    • Editor Blogs
    • Video
  • Controls
    • HMIs
    • PC-Based Controllers
    • PLCs + PACs
    • Stand-Alone Controllers
    • Software
  • Drives
    • Servo Drives
    • Stepper Drives
  • Encoders
    • Absolute Encoders
    • Incremental Encoders
    • Rotary Encoders
  • Mechanical
    • Bearings
    • Brakes + Clutches
    • Belt + chain
    • Couplings
    • Gears + Gearing
    • Lubrication
    • Shock + Vibration Mitigation
    • Springs + Rings + Seals
  • Linear
    • Actuators
    • Linear Motors
    • Linear Encoders
  • Motors
    • AC Motors
    • DC Motors
    • Brushless Motors
    • Gearmotors
    • Piezo Motors
    • Servo Motors
    • Stepper Motors
  • Systems
    • Conveyors + linear transport systems
    • Gantries + Stages
    • Rotary Tables
    • Grippers + End Effectors
    • Robotics
  • Networks
    • Connections + Sliprings
    • Fieldbuses
    • I/O
    • Sensors + Vision
  • FAQs
    • Motion Casebook
    • Motion Selection Guides
  • Suppliers
You are here: Home / FAQs + basics / FAQ: How do proprietary and open-source PC control software programs compare?

FAQ: How do proprietary and open-source PC control software programs compare?

December 24, 2016 By Steve Meyer Leave a Comment

The central issue with anything that is programmable is the programming itself. Regardless of whether the system is open source or proprietary, the key to successful control applications is to correctly program the design intent. Capturing the full intent at the start of a project is impossible, especially if the project has not been done before. There is always some degree of ‘discovery’ along the way.

At the level of creating a programming language, there is a dichotomy at work. It is possible to create languages that are narrowly defined to solve a category of problems. This is the case in programming ladder logic. Alternatively it is possible to create a language sufficiently broad to solve all problems, regardless of complexity. With complexity comes a bigger learning curve and ambiguity. Thus, a given control system solution can be programmed in a variety of ways.

Some of the larger control vendors have created integrated software environments where several program languages co-exist in the same shell. A Basic or C-code subroutine can exist as a module within a ladder or state machine program. Time will tell if this is the wave of the future or a transitional step to something else.

Tools such as flowcharting are important to the success of new software efforts. By documenting with flowcharts at the beginning of a project, it is possible to capture more of the design intent and anticipate programming issues instead of constantly running into surprises as the project unfolds.

One benefit of proprietary solutions is that mature suppliers have expert programmers who can help users to work out the details of a control solution. Open-source programming may have a community of users who are part of the ecosystem …

… so they can offer advice, but there is no obligation for support.

Robust operating systems and ever-declining hardware cost make control system hardware relatively transparent. Many vendors support Linux platforms making it feasible to run control software on almost any processor. There are CNC programs running on Linux with Raspberry Pi processor boards, so anything is possible. This new range of options often makes an open source solution more economical.

A common concern in proprietary software is the updating of software products in order to add new features. Revision control is a major concern in manufacturing environments. New revision rollouts don’t automatically constitute a basis for upgrade. Users must do a lot of testing to validate new versions before implementing them in existing systems.

All of that said, proprietary software is generally easier to use where there is a specific class of problems that are addressed, such as ladder logic. As long as the control problem falls within the boundaries of that software, things should be pretty smooth. If the application requires a lot of custom algorithms that cannot be programmed in known languages, an open-source solution is probably more suitable.

You may also like:


  • Opto 22 announces availability of Node-RED

  • 3 Omron engineers answer 7 FAQs on controllers and PC-based…

  • Arduinos and cheap controllers meet high-performance motion

  • Engineers, don’t overlook (easier) robot setup with new buses
  • 3-HMI-Siemens-Simotion-4.4
    Human-machine interfaces (HMIs) get smart software and mobile access

Filed Under: FAQs + basics, PC-Based Controllers

Reader Interactions

Leave a Reply

You must be logged in to post a comment.

Primary Sidebar

POWER TRANSMISSION REFERENCE GUIDE

DESIGN GUIDE LIBRARY

“motion
Subscribe Today

RSS Featured White Papers

  • Specifying electric rodless actuators: Ten tips for maximizing actuator life and system performance
  • The truth about actuator life: Screw drive survival
  • Top Ten Tips: How to specify electric rod-style actuators for optimal performance, reliability and efficiency

Footer

Motion Control Tips

DESIGN WORLD NETWORK

Design World Online
The Robot Report
Coupling Tips
Linear Motion Tips
Bearing Tips
Fastener Engineering.

MOTION CONTROL TIPS

Subscribe to our newsletter
Advertise with us
Contact us
About us
Follow us on TwitterAdd us on FacebookAdd us on LinkedInAdd us on YouTubeAdd us on Instagram

Copyright © 2022 · WTWH Media LLC and its licensors. All rights reserved.
The material on this site may not be reproduced, distributed, transmitted, cached or otherwise used, except with the prior written permission of WTWH Media.

Privacy Policy | RSS