Get there faster and with ease
Our patented technology is applied in Selmo Studio - the only method that automatically defines all machine states and converts them into error-free PLC code.
Drag-and-drop functions and ready-to-go building blocks ease day-to-day use. This enables even users without programming skills to work with Selmo Studio easily and efficiently. Additionally, using Selmo Studio automatically complies with all requirements and standards.
Discover all features
Advantages for PLC programmers
-
Graphic Modeling Environment
Drag and Drop your required functionalities.
-
Process Structure
The model is organized into different layers for easier understanding.
-
Assembly Layer
Ready-made function blocks assist you with defining your model—import and export your functions.
-
Code Generator
Based on the model, a PLC program is generated containing all functionalities, HMI and operating modes.
Advantages for machine manufacturers
-
Target System Choice
The process model is defined independently from the target system.
-
Logic Layer
The logic layer enables the user to plan the process without knowledge—easy-to-use process mapping with sequence definition and graphical overview.
-
Project Notes
All in one place - keep notes relating to details of the plant or the commissioning progress.
-
Cost Control
Only once your machine is up and running and all requirements are met, you pay per use with Selmo Tags.
Advantages for machine users
-
Step Time Monitoring
Indication of the minimum, maximum, and average time of all states.
-
Online Mode
Enables the user to follow the plant’s steps and states in real-time.
4 steps to your ready-to-use software
01
Model the process
The process is defined and converted into a model based on the required functionalities. A digital twin of your process is created.
When modeling, you connect process logic and assemblies in a bit-controlled manner. The sequence functionality clearly describes each status of your machine and system.
02
Generate PLC and HMI
From the model, an algorithm generates the error-free PLC code (PLCopen XML) and the HMI - without the need for further manual programming. All with low code programming.
03
Choose the target system
Simply select the target system for exporting the PLC code. The model can be generated for any PLC Open hardware.
04
Implement & go live
After generating the code, you can implement it in the target system. Only the IO check must be performed and the system can be started and commissioned with the HMI automatically generated from the model. Virtual Commissioning and software acceptance test in one step.
-
Logic Layer
The logic layer contains the technical requirements for the machine and defines a logical sequence. The logic layer consists of 5 modeling elements and a Cross Sequence Sender and Receiver Step that connects different sequences. The modeling elements describe the relationship between the steps.
-
System Layer
The zones are defined in this area. Four zone types are available for this purpose. These zones are critical to describing the state the machine should be in at each step. This layer is responsible for processing and controlling process signals, which are binary values representing the state of sensors or actuators.
-
Assembly Layer
The assembly layer contains pre-built assemblies and function blocks that can be used for modeling and provide solutions to common problems. This speeds up the development process and saves a lot of time.
-
PLC Code Generator
Selmo allows you to generate a PLC Open compliant XML and import it into the controller of your choice. This standardized XML format enables you to save programs, libraries and projects according to IEC 61131-3. The PLC-open XML format, also known as IEC 61131-10, is part of the IEC 61131 series of standards and enables easy exchange of information between different development environments and platforms. It provides an open interface for storing programs, libraries, and projects according to IEC 61131-3. By using this standardized XML format, developers can generate their code independent of hardware and use it in different control systems.
-
Human Machine Interface (HMI)
Automatic generation of HMI elements from the process model saves time and promotes uniformity of the HMI. Automatic mode executes pre-programmed sequences, while manual mode allows for manual control.
The HMI provides features such as automatic release, EOC mode, and sequence control for hardware zones. Sequence control enables single or automatic operation, parameter setting and timeout monitoring.
Update history
-
Current updates
Here are the key features of version 2024 SP2:
- Selmo Studio: Fixed bug with parameter references while copying sequences.
- Selmo Studio Logic Layer: Added possibility to define more than one 'End of cycle' step.
- Selmo Studio Logic Layer: Fixed bug when multiple selected steps have no common properties shown.
- Studio Logic Layer: Added possibility to copy current diagram to clipboard.
- Selmo Studio System Layer: Fixed bug where changes on multiple selected operand cells are done not correctly.
- Selmo Studio System Layer: Fixed bug where the operands zone filter is not working properly.
- Selmo Studio Function Layer: Added possibility to define function reference groups.
- Selmo HMI: Added new feature to select current step directly in HMI.
- Selmo HMI: Added new feature to display first detected interlock in HMI per sequence.
- Selmo HMI: Fixed bug where the scrollbar is not showing at plant parameters overflow.
- Selmo HMI: Improved performance when using ADS communication during startup and while recording parameters.
- Selmo Basic PLC Library: Updated library to 3.1.9.1 for TwinCAT3 and CODESYS platform.
- Selmo: Many various bug fixes.
Here are the key features of version 2024.4 SP1:
- Selmo Studio: Added custom OPC UA to target system list
- Selmo HMI: Fixed bug where historic data is not working when property 'Hide in HMI' is set
Here are the key features of version 2024.4:
- Selmo Studio: Possibility to overwrite already existing assemblies in the repository.
- Selmo Studio: Internal optimization for automation peer exceptions.
- Selmo Studio: Fixed bug where the PDF export is canceled with an exception.
- Selmo Studio: Enhanced project layout optimization to zone lamp indexes.
- Selmo Studio: Added possibility to pack all project outputs (generated HMI and PLC code) and used assemblies of a project into a ZIP file. This function can be found via the context menu in the project explorer.
- Selmo Studio: Added possibility to get a 30-days trial license when starting selmo studio without an installed license.
- Selmo Studio: Added possibility to export and import entire hardware zones.
- Selmo Studio: Added possibility to copy and paste entire hardware zones.
- Selmo Studio System Layer: Fixed bug where some parameters are not cloned to inverted zone.
- Selmo Studio System Layer: Fixed a bug where the step name and group name are only editable with text input from keyboard and not with mouse click.
- Selmo Studio System Layer: Added the possibility to select parameters in zone or step properties from neighboring sequences as well.
- Selmo Studio System Layer: Added possibility to filter zones with multiple search terms; the separator is ';'.
- Selmo Studio System Layer: Added operands filter to the system layer, which means that only zones will be shown that have at least one operand in all selected steps.
- Selmo Studio Parameter List Layer: Fixed bug where the window parameter columns are not shown.
- Selmo Studio Parameter Layer: Fixed bug where the section is not trimmed after editing ended.
- Selmo Studio Parameter Layer: Fixed bug where parameter groups are not expanded when the search is started.
- Selmo Studio Parameter Layer: Fixed bug where copied parameters from different layer also add '_1' text.
- Selmo Studio Parameter Layer: Added possibility to set historic data.
- Selmo Studio Parameter Layer: Added possibility to declare more than one section per parameter to show one parameter in more sections. Section separators are ';' and '|'.
- Selmo Studio Parameter Layer: Added possibility to declare a parameter as hardware input or output.
- Selmo Studio Logic Layer: Now it will be prevented, that cross sequence steps can be copied without their corresponding twin step.
- Selmo Studio Logic Layer: Fixed bug where the icon for the second belonging cross sequence step is not showed.
- Selmo Studio Logic Layer: Fixed bug where cross sequence steps are not able to copy.
- Selmo Studio Logic Layer: Fixed bug where connect feature is not working when more than one outgoing link are present.
- Selmo Studio Logic Layer: Fixed bug where auto moving shapes after insertion of new steps is not working inside a jump or repeater connection.
- Selmo Studio Logic Layer: Fixed a bug where the loop connector was incorrectly reconnected to a newly added step when auto-connect is enabled.
- Selmo Studio Logic Layer: Fixed a bug where the comment shape could not be copied.
- Selmo Studio Logic Layer: Fixed a bug where text in clipboard is pasted as a new step when any other step is in edit mode.
- Selmo Studio Logic Layer: Fixed a bug where a shape is not restored, when a step has no correlation to the logic layer.
- Selmo Studio Logic Layer: Added ribbon button to create a connection automatically between two selected steps.
- Selmo Studio Language Layer: Added possibility to paste cells from clipboard.
- Selmo Studio CMZ Layer: Fixed bug where CMZ with defined parameters is not able to copy.
- Selmo Studio Assembly Layer: Added possibility to select parameters at the assemblies from hardware zone or plant level.
- Selmo HMI: Fixed bug with long HMI texts at parameters.
- Selmo HMI: Fixed bug where the feedback of the manual button is not correct at inverted zones.
- Selmo HMI: Fixed a bug where the warning symbol is not shown when step property 'show indication' is set.
- Selmo HMI: Fixed a bug where the process set value snapshots are not working properly with an OPC UA connection.
- Selmo HMI: Fixed a bug where the plant parameters are not scrollable.
- Selmo HMI: Fixed a bug where a second instance of a generated HMI generates database errors.
- Selmo HMI: Added the possibility to store historical data only when the value exceeds a configured threshold.
- Selmo HMI: Added the possibility to change the manual button mode from push button to switch with the pin button besides the manual button.
- Selmo HMI: Added historic data chart view.
- PLC code generation: Improved error handling implemented when a repeater is connected to subsequent steps.
- PLC code generation: Fixed bug where the output group could not be declared as a hardware output.
- PLC code generation: Fixed bug where the input and output variable are not matching the analog setpoint parameter data type in zone mode \.
- PLC code generation: Fixed bug where OPC UA attribute is missing at sequence assembly variable declarations.
- PLC code generation: Added datatype conversion to output distribution and parameter list assigns.
- PLC code generation: Added attribute 'ISREFERENCE' to externals io's of assemblies.
-
Previous updates
Here are the key features of version 2023.7 SP1:
- Selmo Studio: Project memory layout optimization added. This will reorganize all selmo basic zone bit and operand arrays at PLC level.
- Selmo Studio: Error after pressing button "Read request ID and status" on LicenseView
- Selmo Studio Assembly Layer: Problem with Selmo Motion driver
- Selmo Studio System Layer: Icon at InOut and Out Zone in System Layer when keep alive is active
- Selmo Studio Assembly Layer: Add "KeepAlive" attribute to driver in out definitions
- Selmo Studio System Layer: Icon at InOut Zone in System Layer when keep alive is active
- Selmo Studio: Changed "Upload" and "Download" notations which was used with PLC communications
- Selmo Studio: New property "show indication" at step level to show the warning symbol at sequence and hardware zoner level on the HMI, e.g. a manual action is necessary
- Selmo Studio: fixed zone fast rename with mem zones not working
- Selmo Studio: fixed analog output value not working in manual mode
- Selmo Studio Logic Layer: fixed jump to a jump or decision connection is not possible
- Selmo Studio System Layer: Separate output state of set and reset mem zones while online
- Selmo Studio: fixed bug where the decision system zone input and outputs are not renamed correctly
- Selmo Studio System Layer: Fixed clone to inverted not cloning analog function
- Selmo Studio: Fixed Multi-Master not working
- Selmo Studio: Fixed unchangeable Web View Address
- Selmo Studio: Added property "Output Distribution" to InOut- and Out-Zones. Here you can set a parameter where the output value of the zone will be distributed respectively copied.
- Selmo HMI: Fixed bug where the feedback is not displayed in manual button when zone input mode is set to analog
- Selmo HMI: Fixed bug where no variables can be added to var out scope feature
- Selmo HMI: Prioritize error before warning in alarm line
- Selmo HMI: Add lamp test buttons
- Selmo HMI: HWZ buttons alignment fixed
- Selmo HMI: Sequence lamp refactored
- Selmo HMI: HwZone lamp added
- Selmo HMI: Sequence View manual functions and parameter at the same time
- Selmo HMI: monitoring entries overloads alarm history
- Selmo HMI: System Error, AdsException when using monitoring check feature
- Selmo HMI: Exception after pressing time monitoring button
- Selmo HMI: Step Time Monitoring ADS fixed
- Selmo HMI: Add sequence interlock message to alarm line
- Selmo Studio: Added Zone Input Mode "ParameterInput" to enable possibility to compare two parameters as feedback
- Selmo Studio: Added "Window" as analog function to Zones and CMZ with possibility to define the positive and negative threshold with parameters
- Selmo Standard: Added feature "Ghost Mode" to simulate feedback signals with a separate delay and its own operating mode
- Selmo Standard: Added possibility to CMZ to add parameters as compare to input of CMZ
- Selmo Studio: Now it is possible to activate full license without internet connection
- Selmo HMI: Fixed bug where OPC UA alarms are shown with UTC time
- Selmo Standard: Global and hardware zone TCMZ have now the same functionality as sequence CMZ like auto reset and delay.
- Selmo HMI: Ghost mode is now only activatable when hardware zone is in manual mode and the safety function key is selected.
- Selmo Studio System Layer: With the feature "Auto fill operands" you can completing operands of new steps with the values of the contiguous steps.
- PLC code generation: signal any sequences in time out
- PLC code generation: signal any sequence end of cycle reached
- PLC code generation: any sequence in single step bit
Here are the key features of version 2023.7:
- Add new PLC Libraries to project and installer.
- Allow Drag and drop seo files in app.
- Zone In-Out Property "Output Keep Alive".
- Recording of timeouts in alarm list.
- Diagnostic Package Part2.
- Extend analog function.
- Logic Layer: Button Re-leyout steps.
- Naming when using drivers.
- Check internet connectivity during License Check.
- Renaming Feature "Major Master" into "Multi Master".
- HMI Alarm Line: Count of alarms.
- UI Control Generic Code Text Editor.
Here are the fixed issues of version 2023.7:
- Selmo Studio: Product levels not working.
- Selmo Studio: After successful HMI generation, HMI output directory link is not visible in output window.
- Selmo Studio: System layer is not able to connect with OPC UA connection.
- Selmo HMI: parameter input controls width bug.
- Disable Generate Menu Button if no project is loaded.
- No License activator file in Release build.
- Folder for diagnostic package is not created.
- Parameter initial values out of LL LH.
- Selmo HMI: Embedding "BORIS" native Window into HMI not working.
- Selmo Studio Upgrade from 2023.1 SP1 to 2023.6.0 not starting.
- No use of Camelcase in Selmo Studio.
- HMI alarm counter wrong.
- HMI: Wrong time base.
- Configurable start-up delay does not work.
- Automatically delete leading zeros.
- System Layer -> Output-Zone Analog Mode.
- HMI/GUI: Clock icon is obsolete.
- Parameters: Real Value upload from PLC.
- HMI/HWZ: hide parameter button if no parameters are projected.
- HMI/Sequence Control: disable the buttons "Step decrement, Step next vaild, Step increment" in automatic mode.
- HMI/Sequence Control: disable the button "Step Single" in manual mode.
- HMI/Sequence manual control: disable the manual control buttons in automatic mode.
- Studio/CMZ editor: correct spelling of the expression.
- Selmo Studio Assembly Layer: after changed already used assembly file in repository, driver looses all parameter and zone assigns.
- Studio/general: element DP in parameter editor did not work.
- Assembly Layer: No actualisation of Parameter Names after renaming.
- Alarm history: sequence cmz should be recorded event based and not every second.
- Sequence CMZ: CMZ is not shown in the alarm bar.
- Parameter list: Edit Parameter: "Button Mode" should only be activated for Boolean data types.
- Parameter list: The function option is not disabled after changing the parameter list from "In" to "Out".
- Added CMZ section to alarm text on HMI.
- Clone to inverted should not be possible for the output zone.
Here are the key features of version 2023.1 SP1:
- BREAKING CHANGE in generated PLC-Code: The memory zone variable is now declared as persistent.
- BREAKING CHANGE in generated PLC-Code: The cross-sequence master variable is now declared as persistent.
- System Layer: Fixed bug where the operands “D1”, “D2” and “J” are not working with Memory Zones.
- System Layer: Fixed bug where the input parameter list is not working as expected with conditional jumps.
- System Layer: Fixed bug where the parameter lists are not working as expected with repeaters.
- System Layer: The parameter list output mode of zones can now be used to assign the output parameter value to another parameters.
- Parameter Lists: Fixed bug where parameters are only available from sequence.
- Logic Layer: Fixed bug where the decision path information is not restored correctly when delete path steps and new one added.
- Logic Layer: Removed manual jump variable from jump step. Only operand 'J' is now allowed in system layer.
- Logic Layer: Fixed bug where the PLC code is possible to generate while a step in the logic layer is in an error state.
- Assembly Layer: Fixed bug where the assembly interface is not updated when underlying Assembly file is changed.
- Parameter Layer: Fixed bug in copy and paste parameter mechanism.
- Parameter Layer: Added limit low and limit high check of initial value.
- Parameter Layer: Added initial value verification of each PLC data type.
- MXIC Layer: Fixed HMI Button text binding bug.
- Selmo HMI: Fixed bug where the date string in main form is not translated to German culture.
- Selmo Studio: Added possibility to export all in project used assemblies. Find this feature at the context menu of the project in the project explorer.
- Selmo Studio: Fixed bug where the ctrlX WORKS Licensing API is not working.
Here are the key features of version 2023.1:
- System Layer: Added operand “M” to monitor zone signals which are displayed in HMI and stored to alarm history database. This operand will not affect the automatic mode.
- System Layer: Added new zone type “Zone Mem”.
- System Layer: Added operand 'C' to set a zone as a cancel variable for a repeater.
- System Layer: Added possibility to show or hide all system zones at once and to switch zone header text between zone name and HMI display text.
- System Layer: Added possibility to filter zones by their group names.
- System Layer: Increased performance when connecting of large system layer to PLC, when a zone or group filter is applied.
- System Layer: Possibility to multiple edit of group name, HMI button and HMI button text of selected zones.
- Parameter Layer: Added feature to upload current values from PLC and to copy them to initial parameter value.
- Parameter Layer: Now the unit of the parameter is recognized when using type TIME and initial value."
- Parameter Layer: Removed for user useless parameter ID column."
- Selmo HMI: Added feature “Step decrement” and “Step next valid” to sequence controls in generated HMI."
- Selmo HMI: Fixed bug where too long step texts will not be wrapped.
- Selmo HMI: Now it's possible to start more than one instance of generated HMI's.
- Selmo Studio: Added new Target System “Beckhoff TwinCAT 3 OPC UA”.
- Selmo Studio: Added new Target System “CODESYS Control for PLCnext SL AXC Fx152”
- CMZ: Fixed bug at TCMZ layer where the error delay has no effect of generated PLC-Code.
- CMZ: Removed Auto-Reset column at TCMZ layer.
- CMZ: Removed for user useless CMZ ID column.
- Fixed bug in ctrlX WORKS licensing system.
- Fixed other many minor bugs and added some improvements
Here are the key features of version 2022.9 SP2:
- System Layer: Fixed bug of broken PLC-Code when dissolving repeater and a cross sequence is also used in same sequence.
- CMZ: Fixed bug with special chars in variable name of TCMZ at hardware zone and plant level.
- PLC-Code Generator: Fixed bug in part of 'Start-Up Siren' generated PLC-Code which prevent the siren to work.
- PLC-Code Generator: Added Repeater Cancel Variable to input mapping program.
- Selmo HMI: Added possibility to parameters to hide from HMI panel.
- Selmo HMI: Fixed bug in OPC UA Controller when two variables have the same name.
- Selmo HMI: Fixed bug where disable switch not working at step monitoring when connected through OPC UA.
- App: Fixed Property Grid refreshing bug when switching between system layer tabs.
- App: Fixed wrong calculation of user zones + steps at license page.
- Fixed minor application bugs and added some other improvements.
Here are the key features of Version 2022.9 SP1:
- System Layer: Migrated zone operands to new characters 'S' for sequence-check and 'I' for interlock-check.
- System Layer: In-Out and Out zones can now be grouped. These grouped zones become a common group output in the IO GVL.
- System Layer: Zones which are attached to a driver will be now marked by an icon in the header row.
- Fixed minor application bugs and added some other improvements.
Here are the key features of Version 2022.9:
- System Layer: Added Feature 'Parameter Lists' to zone in- and outputs. Define individual analog values per step in a single in, out or in-out zone. You can also choose from a static value or from a sequence parameter for each step. You can find the parameter lists editor in the context menu of the sequence. To assign this list to a zone output you must first choose 'ParameterList' in the property 'Output Mode'. System Layer: Added Text-Filter for Zones to switch visibility.
- Selmo HMI: Introducing 'Language Switching' Feature. Translatable texts are reachable respectively editable over the corresponding context menu in the project explorer and the item 'Languages'. This is valid for all Selmo objects like steps, zones, parameters, CMZ, sequences, hardware zones and so on. Changing of the language can also be triggered by a global index-based language variable.
- Selmo HMI: Possibility to generate HMIs from a single sequence or hardware zone. Find these commands in context menu of corresponding item in Project Explorer.
- Selmo Standard: Interlock Stored bits will be reset now when reset from HMI or global executed.
- Selmo PLC Code Generator: Fixed bugs with specials characters during code generation.
- Logic Layer: Now it's possible to move diagram with middle mouse button.
- Logic Layer: Fixed problems and bugs with jumps and repeaters.
- System Layer: Fixed bugs when up- or downloading operands to an ADS driven controller.
- System Layer: minor bug fixes to UI.
- Selmo HMI: Added Logic Layer to HMI to show original diagram of sequence and the current active step.
- Selmo HMI: Added command 'HwZone Automatic Release' to hardware zone controls panel for releasing only sequences in this hardware zone.
- Application: Export the project documentation as a PDF-File with the command in the 'File' menu.
- Application: Activate or deactivate 'interlock stored' feature project-wide in the plant context menu.
- Application: Bosch Rexroth ctrlX WORKS licensing platform is now supported. From now it's possible to buy Selmo Studio licenses in the ctrlX store. Minimum version of ctrlX WORKS 1.14 is required.
- Application: Check for Selmo studio updates at start-up. When an update is available you can directly download it.