Difference between revisions of "Firmware Parameter Configuration"

From Wiki
Line 5: Line 5:
  
  
----
 
 
== General Procedure ==
 
== General Procedure ==
 
* Make a backup of the current firmware parameter
 
* Make a backup of the current firmware parameter
 
* Adapt the values in the backup file
 
* Adapt the values in the backup file
 
* Upload the file again
 
* Upload the file again
 
 
----
 
 
  
  
 
== Parameter File ==
 
== Parameter File ==
  
The parameter are stored in files like this: <code>c:/CPRog/Data/Robots/igus_5DOF_BV/igus_5DOF_BV_DiscHalfRef_AmpParameter.dat</code>
+
The parameter files contain a set of parameter for each joint of the robot:
Please choose the right file for your robot type!
 
 
 
The file contains one section for each joint, starting from zero:
 
  
 
<code>
 
<code>
Line 33: Line 25:
 
</code>
 
</code>
  
Before changing these files please make a backup copy!
+
Floating point values have to be separated by '.', not by ','!
 +
 
 +
The most important parameter are:
 +
* Offset: This value defines the offset between reference position and zero position. The unit is encoder tics.
 +
* CSLoad: Defines the motor current while running. Values from 1 (minimum) and 31 (maximum) are allowed.
 +
* CSStart: Defines the motor current while starting (low rpm). Values from 1 (minimum) and 31 (maximum) are allowed.
 +
* CSIdle: Defines the motor current while not running. Values from 1 (minimum) and 31 (maximum) are allowed.
 +
* CSRef: Defines the motor current while referencing. Values from 1 (minimum) and 31 (maximum) are allowed.
 +
 
 +
The following parameter should only be changed when you are aware of the usage:
 +
* PosP: Proportional parameter of the position PID control. Around 1.0 for robots with motor encoder
  
CPRog also writes a backup file of the current parameter on the joint modules. It is saved in <code>c:/CPRog/data/backups/</code> with the current date and time.
+
The files are stored in two locations:
 +
* <code>c:/CPRog/Data/Backup/filewithdateandtime.dat</code> for the backup files from your robot
 +
* e.g. <code>c:/CPRog/Data/Robots/igus_5DOF_BV/igus_5DOF_BV_DiscHalfRef_AmpParameter.dat</code> for general presets based on the robot type
  
To increase the path following of the joint a little change the value of PosP to eg 1.3.
 
  
Now save the file.
+
== Detailed Procedure ==
  
== To set the parameter to the control modules: ==
 
  
 
* Open CPRog
 
* Open CPRog
* Connect to the robot
+
* Connect to the robot via USB-CAN-Adapter or Ethernet
 
* Open the circle menu in the left upper corner
 
* Open the circle menu in the left upper corner
 +
* Select /Configuration/Amp Config/Backup current config
 +
* Now a backup file is written in c:/CPRog/Data/Backup
 +
* Change the file according to your requirements, e.g. adapting the offsets
 
* Select /Configuration/Amp Config/Set new config
 
* Select /Configuration/Amp Config/Set new config
 
* Choose the updated .dat file
 
* Choose the updated .dat file

Revision as of 14:28, 4 October 2018

This section applies for: robolink DCI, robolink, drylin gantry or drytech delta with modular control, both via USB and embedded. It does not apply for the Mover robots.

CPRog allows to set all firmware parameter of the motor controller. This is done either directly using the USB-CAN-Adapter, or via Ethernet and the TinyCtrl software on the embedded Linux board.


General Procedure

  • Make a backup of the current firmware parameter
  • Adapt the values in the backup file
  • Upload the file again


Parameter File

The parameter files contain a set of parameter for each joint of the robot:

        <Joint0 ID="16" ComTimeOut="2000" MaxCurrent="200" MaxLag="5000" PosP="1.000" PosI="0.000" PosD="0.000" PosAWU="30.000" 
        Encoder="True" SwapEncoderDirection="False" EndSwitchRising="True" StopOnEndSwitch="False"
        RefStraight="False" RefSinus="False" RefHalf="True" SinusRefTics="2000" SinusRefMaxCycles="6"
        Offset="0" RefSpeed="50" RefSpeedSlow="10" RefFromBothSides="True"
        SGThreshold="2" CSLoad="20" CSStart="20" CSIdle="6" CSRef="18" StartArea="200"
        MinSupplyVoltage="500" MaxTemperature="500" Microstepping="128"
       />

Floating point values have to be separated by '.', not by ','!

The most important parameter are:

  • Offset: This value defines the offset between reference position and zero position. The unit is encoder tics.
  • CSLoad: Defines the motor current while running. Values from 1 (minimum) and 31 (maximum) are allowed.
  • CSStart: Defines the motor current while starting (low rpm). Values from 1 (minimum) and 31 (maximum) are allowed.
  • CSIdle: Defines the motor current while not running. Values from 1 (minimum) and 31 (maximum) are allowed.
  • CSRef: Defines the motor current while referencing. Values from 1 (minimum) and 31 (maximum) are allowed.

The following parameter should only be changed when you are aware of the usage:

  • PosP: Proportional parameter of the position PID control. Around 1.0 for robots with motor encoder

The files are stored in two locations:

  • c:/CPRog/Data/Backup/filewithdateandtime.dat for the backup files from your robot
  • e.g. c:/CPRog/Data/Robots/igus_5DOF_BV/igus_5DOF_BV_DiscHalfRef_AmpParameter.dat for general presets based on the robot type


Detailed Procedure

  • Open CPRog
  • Connect to the robot via USB-CAN-Adapter or Ethernet
  • Open the circle menu in the left upper corner
  • Select /Configuration/Amp Config/Backup current config
  • Now a backup file is written in c:/CPRog/Data/Backup
  • Change the file according to your requirements, e.g. adapting the offsets
  • Select /Configuration/Amp Config/Set new config
  • Choose the updated .dat file
  • Wait until all parameters are written, approx 20s
  • For some parameter, e.g. the encoder direction, the control needs a cold restart
  • Test if the changes result in a better performance.


For questions please get in contact!