User Tools

Site Tools


getting_started:tutorials:mockrobot

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
getting_started:tutorials:mockrobot [2021/03/31 17:45] – [Safety System] ursgrafgetting_started:tutorials:mockrobot [2026/01/13 08:33] (current) – [Control System] ursgraf
Line 8: Line 8:
  
 ===== The Full Picture ===== ===== The Full Picture =====
-This example does not need any hardware. The moving of a robot is pretended by using integrators summing up. This represents the position on an axis. Before a robot can be moved it has usually to be homed+This example does not need any hardware. Before a robot can be moved it has usually to be homed. After homing the moving of a robot is pretended by using integrators summing up. This represents the position on an axis. 
  
 The main application defines a control system and a safety system. The safety system is assigned as main task and passed to the executor. Further, a main sequence is defined and added to the sequencer and started. After this the executor starts running. The main application defines a control system and a safety system. The safety system is assigned as main task and passed to the executor. Further, a main sequence is defined and added to the sequencer and started. After this the executor starts running.
Line 43: Line 43:
 The main program must wait for the sequencer to stop until it can finish, in order to terminate gracefully without any running thread. The main program must wait for the sequencer to stop until it can finish, in order to terminate gracefully without any running thread.
 ===== Control System ===== ===== Control System =====
-The control system is very simple. Each of the two axis x and y, it has a constant block acting as a set point and an integrator block pretending the position to move\\+The control system is very simple. constant block with Vector2 acts as set point for the two axis x and y. An integrator block pretends how the position moves during homing. When the robot runs a path planner with constant acceleration, see [[eeros_architecture:control_system:available_blocks:pathplannerconstacc|]], moves its position back and forth. 
 + 
 +[{{ :getting_started:tutorials:mockrobotcontrolsystem.png?400 |//Control system//}}] 
 In the constructor of the control system the blocks are created, connected, and the integrator are enabled. All of the blocks are added to a time domain which itself is passed to the executor. This time domain runs in parallel to the safety system task. In the constructor of the control system the blocks are created, connected, and the integrator are enabled. All of the blocks are added to a time domain which itself is passed to the executor. This time domain runs in parallel to the safety system task.
  
 ===== Safety System ===== ===== Safety System =====
 The safety system has four levels and a couple of safety events to switch between these levels. The safety system has four levels and a couple of safety events to switch between these levels.
-[{{ :getting_started:tutorials:mockrobotss.jpg?300 |//Safety system with levels and events.//}}]+[{{ :getting_started:tutorials:mockrobotss.jpg?220 |//Safety system with levels and events.//}}]
 The event ''abort'' can be triggered in all levels except ''slOff''. The safety system starts in the level ''slHoming''. As soon as the homing is complete the safety level switches to ''slReady''. The sequencer can then cause the safety system to change to level ''slMoving'' The event ''abort'' can be triggered in all levels except ''slOff''. The safety system starts in the level ''slHoming''. As soon as the homing is complete the safety level switches to ''slReady''. The sequencer can then cause the safety system to change to level ''slMoving''
  
getting_started/tutorials/mockrobot.1617205522.txt.gz · Last modified: 2021/03/31 17:45 by ursgraf