User Tools

Site Tools


control_system

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
control_system [2023/05/11 16:58] – [Controller] ursgrafcontrol_system [2023/05/11 17:13] (current) – [Motor Model] ursgraf
Line 40: Line 40:
  
 ==== Motor Model==== ==== Motor Model====
- +As our board cannot only control voltages fed to each motor, we must use a motor model to calculate these voltages. The block 'Motor Modelgets the actual speed and the calculated torque as input, and outputs the desired voltage for each motor. We must also take the gear into account. The speed is reduced by the gear ratio while the torque must be multiplied with the same ratioThe following equation holds 
-The "Motor Modelgets the actual speed and the calculated torque as input, and outputs the desired voltage for each motor.\\  +<code> 
-The "voltageSetPoint" serves for the initializing of the encoder. This block is no longer used after reaching Safety Level "systemReady".+U = kM * w + I * RA + dI/dt * L  
 +</code> 
 +with I = M / kM and dI/dt * L beeing very small with our motors and accounting for the gear i we get 
 +<code> 
 +U = kM * w * i + M * RA / (kM * i) 
 +</code>
 ==== Outputs ==== ==== Outputs ====
 The drive signals to the motor are of type ''PeripheralOutput''. They are described in the HAL as well. The drive signals to the motor are of type ''PeripheralOutput''. They are described in the HAL as well.
Line 48: Line 53:
 eeros::control::PeripheralInput<double> mot1("motor1"); eeros::control::PeripheralInput<double> mot1("motor1");
 </code> </code>
 +
 +The block 'voltageSetPoint serves for the initializing of the encoder when homing. It drives the motors with slow speed into a mechanical stop. This block is no longer used after reaching Safety Level ''systemReady''.
control_system.1683817133.txt.gz · Last modified: 2023/05/11 16:58 by ursgraf