Tutorial 3: Electric door
In this tutorial you will:
- Make a mechanical port connection between components.
- Make a constraint between two component's links.
Start by loading the tutorial system into the workspace, and then navigate through the components in the tree and the scene to explore them.
To be able to follow this tutorial, make sure you have already done the Basic Tutorial 2.
The system includes two assemblies:
- cabinet: With an electric box, a 3-phase power supply, a 24V DC power supply, buttons, a light, and a reversing motor contactor.
- door: With a 3-phase motor, an electric door, a photoelectric sensor, and a detection plate.
Let's download the diagrams and take a look at the configuration of the system.
The reversing motor contactor KM01_02 includes both KM01 and KM02 in the drawings and is used to command the door up and down. The 'S01' pushbutton on the panel will be used to activate 'KM01' while the second pushbutton 'S02' will activate 'KM02'.
The motor 'M01' has a mechanical output port that is connected to the 'DOOR', so the rotational speed of the motor will be converted to translational speed on the door component and make it open or close.
Finally, the photoelectric sensor 'B01' is placed on the top of the door and the 'H01' light is placed on the panel to tell when the door is opened. To achieve this functionality, it is necessary to activate the 'B01' sensor when the door opens. For that reason, the door assembly includes a detection plate 'PLATE' placed on the bottom left corner.
If you start the emulation at this point, without creating any connection at all, you will see that the 'PLATE' falls to the floor because of gravity. If you reset the emulation it will come back to its initial position.
If you move a component from its original position in the system and start the emulation, the component will be moved back to this position when the emulation is reset (instead of returning to the original position from when the system was loaded).
Constraints are used to establish physical relationships between components. Simumatik OEP supports multi-link components: components that have one or several movable parts (links) with some limitations between each other (joints). This feature allows users to create everything from a simple button, a pneumatic cylinder, to a 6-axis robot.
Constraints can have degrees of freedom and even limits, but so far we are just using a 'fixed' constraint.
In this system, we have an electric door component that has two links: the base link which is called 'frame', and another link called 'door', which has a degree of freedom in the vertical (Z) axis. You can read about the component by opening its information window.
To create a constraint, select the 'door' assembly in the left panel and right-click on it. Then select the 'Add Constraint' option on the pop-up menu.
Enter a name for the constraint, and click on 'OK'.
Now you need to set up the constraint between the two components that need it, in this case, the 'DOOR' and the 'PLATE'. Select the newly created constraint on the left panel, and then set up the constraint's 'parent' and 'child' links on the variable panel. Click on the edit icon to modify the values of the variables.
The link selection tool will appear and offer you a list of all components in the actual assembly (and their links). Since we want to attach the 'PLATE' to the 'DOOR' to make it move up and down together with the door, the 'parent' link should be 'DOOR.door' (the door's movable link).
Then edit the child variable and set it to the 'PLATE.base' link, the only link of the 'PLATE'. The result should be equal to the next picture.
The two components are now physically attached.
Make all connections
To continue with the tutorial, create all electrical connections between the components. Do not forget to create also the mechanical connection between the 'M01' and the 'Door' mechanical ports.
Time to play!
Now you should be able to start the emulation and test the system. The door should open and close when you press the buttons. If you reset the system the door will be closed.
If necessary, you can adjust the 'B01' sensor and the 'PLATE' by moving them while the emulation is paused. Any change in the 'PLATE' position or orientation will affect the constraint.
You can even see what happens when you change the 'DOOR' variable 'gear_rel'...