cmparker Posted November 8, 2012 Share Posted November 8, 2012 I currently have a motor configured and tuned on Axis 7 of a Geo Brick LV. I need to change its natural direction from CW to CCW when a "j+" command is issued without changing the hardware. I first changed I7mn0 (I7130) from 7 to 3 and the encoder counts positive in the opposite direction it did before. I then inverted Ix30 (I730). I can now phase the motor but when I try a jog command I get a fatal following error or an amplifier fault (Over Current). What else do I need to change to get it to work? Thanks, Chris Other Info: DC Brushless motor 8 Poles 8000 cnt/rev quadrature encoder Hall Phasing Link to comment Share on other sites More sharing options...
tahoe brian Posted November 9, 2012 Share Posted November 9, 2012 The problem is your commutation phase advance sense is backwards using your technique. You did the encoder part correctly. You want to leave Ix30 in the "positive" sense as it was and adjust the bit 22 of Ix81 to change the phase direction of the Hall sensor. The user manual should clarify this. Link to comment Share on other sites More sharing options...
Sina.Sattari Posted November 9, 2012 Share Posted November 9, 2012 cmparker, The positive sense of direction can be changed in Turbo PMAC with purely changing parameters and without any modification to the machine wiring. The methods are a bit different for different control types of the motor/amplifier. In case of Geo Brick LV, the method is Direct-PWM control and the following steps will switch the positive sense of direction on a motor, but first make sure the motor can be phased and jogged in one direction. Quadrature/Sinusoidal Encoders: 1. Change the encoder decode direction (I7mn0 from 7 to 3 or from 3 to 7) 2. Change sign of the Ix70 value. (If Ix70=1 then set it to Ix70=-1) 3. If phasing is done through hall sensors, modify the Ix91 as explained below: Ix91=(Ix91&$C00000)+(64-((Ix91&$3F0000)/$10000))*$10000 This will change the absolute phase reference equal to 360-previous reference angle. Link to comment Share on other sites More sharing options...
cmparker Posted November 13, 2012 Author Share Posted November 13, 2012 cmparker, The positive sense of direction can be changed in Turbo PMAC with purely changing parameters and without any modification to the machine wiring. The methods are a bit different for different control types of the motor/amplifier. In case of Geo Brick LV, the method is Direct-PWM control and the following steps will switch the positive sense of direction on a motor, but first make sure the motor can be phased and jogged in one direction. Quadrature/Sinusoidal Encoders: 1. Change the encoder decode direction (I7mn0 from 7 to 3 or from 3 to 7) 2. Change sign of the Ix70 value. (If Ix70=1 then set it to Ix70=-1) 3. If phasing is done through hall sensors, modify the Ix91 as explained below: Ix91=(Ix91&$C00000)+(64-((Ix91&$3F0000)/$10000))*$10000 This will change the absolute phase reference equal to 360-previous reference angle. Thanks for the info! I had some trouble with number 3. Before I791=$BF0000 and the motor phased with the other old settings. When I use the above equation, $BF0000 -> $810000 which doesn't work with my motor. Playing around with the values I found something around $9D0000 works and allows the motor to phase. How should I determine the "best" value to use for Ixx91? Also how do you read the table at the bottom of the Ixx91 description in the SRM? Thanks, Chris Link to comment Share on other sites More sharing options...
Sina.Sattari Posted November 13, 2012 Share Posted November 13, 2012 Chris, The easiest way to find out what value should be used for Ixx91, is to use HallsUVW software. This software is available under filedepot: http://forums.deltatau.com/filedepot/download.php?f=Turbo%20PMAC/Tools/HallsUVW/HallsUVW.exe [FILE REMOVED] If you want to read the table under Ixx91 in Turbo SRM, then you need to do the following: 1. Phase the motor manually: 1a. Write a positive value to Ixx79 (not exceeding I2T set point Ixx57) 1b. command open loop with 0 torque to the motor (#xO0) 1c. The motor will be pulled and locked into phase angle 0. 1d. Set phase angle to 0. (Mxx71=0, use suggested M-variables). 1e. Kill the motor. (#xk) 1d. Set Ixx79 back to its orginal value. 2. Monitor 2 M-variables in the watch window (you can also use the plot program) 2a. Monitor Mxx28, This M-variable is a pointer to Hall sensor inputs on channel xx. Bit 3 (bit 23 of the status word on the channel) represents flag T, which is not used in normal Hall sensors and can be disregarded. Bit 2 (22) represents flag U. Bit 1 (21) represents flag V.Bit 0 (20) represents flag W. 2b. Monitor Mxx71 in the watch window. The value of (Mxx71/Ixx71)*360 is the phase angle. 3. In the table, find a row in which the UVW values shown and the phase angle for matches the phase angles shown in the columns headers. The corresponding Ixx91 value is shown in the last column of that row. Link to comment Share on other sites More sharing options...
Recommended Posts