xiaomupeng2009
-
Posts
27 -
Joined
-
Last visited
Content Type
Profiles
Forums
Events
Downloads
Posts posted by xiaomupeng2009
-
-
how does the DAC output command in pmac change to the current command in the drive when using in torque mode ?thank you!
is it directly change to q axis current?
-
Does the IMAC can use the serial communication with the PC?when i connection the IMAC to the PC,it can't communication successful! How can i do ?
-
when i use the PLC to monitor the PID parameter,everytime i open the PMAC ,The pid parameter is return to the PID parameter which i monitored.if I want to change the PID parameters,i have to send a command "disable plcc16"to the terminal window,I use the "open plc16 clear"command to clear the plc ,but it can't be cleared!
so in this situation,everytime i have to send a command"disable plcc16"to the terminal window before i want to change the pid parameters!this is the normal situation?
-
can the pmac communication with one PC using IP and communication with another pc using serial for the same time
-
Brain,can you tell me how to detect the drive signal in the pmac?
-
when i use Torque mode to control the motor,how can i detect the current of the motor in the PMAC card!
-
thank you!but I also do not know the format of m166->X:$00009D,0,24,S,if i according to the definition of the above table.it should be the m166->x:$00009D.
Motor present desired velocity (X-register units 3/[ixx08*32] cts/msec at %100; Y is fractional) .what is it the mean of X-register units 3/[ixx08*32] cts/msec at %100; Y is fractional? can you take an example?
-
(1) X:$000x9D/1D ; Motor present actual velocity (unfiltered)
(1/[ixx09*32]cts / [ixx60+1] servo cycles)
m166->x:$00009D,0,24,S ; motor actual velocity
they are all point to the actual address?who can tell me the different!thank you?
what is the "1D"?
(2) D:$000x86/06; Motor present desired velocity (X-register units
3/[ixx08*32] cts/msec at %100; Y is fractional)
when i use the m167->D:$000086 to show the desired velocity,why the display speed is vary a lot with the velocity of program(for example F6 in program)?
what it is relationship of D:$000X86/06 and the command velocity? how can i visit the command velocity like visit the actual velocity?
-
The "OPEN SERVO" feature uses the PLCC compiler so the messages are the same as in compiling a PLC (this is very much like a PLCC0). There is an error in your code.
The following should be one line of code not two.
This is: DACOUT = FLIMIT(ITOF(Ix30)*K16 * ( FE + K128 *(ITOF(Ix32) * DVEL + ITOF(Ix35)
* (DVEL - PDVEL) - ITOF(Ix31) *AVEL) + IPOS), ITOF(Ix69))
This should be: DACOUT = FLIMIT(ITOF(Ix30)*K16 * ( FE + K128 *(ITOF(Ix32) * DVEL + ITOF(Ix35)* (DVEL - PDVEL) - ITOF(Ix31) *AVEL) + IPOS), ITOF(Ix69))
This is not a typographical error but a result of "cut and paste" putting a character in the middle of the line.
Once you make this correction it should download without errors.
YES !thank you!but i want to know that the PID parameters address that M variables visit and L variable visit is the same address? for example,X:$000X9F/1F is the address of IX33,but in here,the L6->X:(R1-$11).is I133.they are represents the same address of I133?
or they are some different?
-
#define K16 0.000015259 ; Constant of 2^-16
#define K128 0.0078125 ; Constant of 1/128
#define K23 0.000000119; Constant of 2^-23
#define Ix08 L1
L1->Y:(R1-$27)
#define Ix09 L2
L2->Y:(R1-$14)
#define Ix30 L3
L3->Y:(R1-$17)
#define Ix31 L4
L4->X:(R1-$1E)
#define Ix32 L5
L5->X:(R1-$21)
#define Ix33 L6
L6->X:(R1-$11)
#define Ix35 L7
L7->Y:(R1-$1D)
#define Ix63 L8
L8->Y:(R1-$11)
#define Ix69 L9 ; Note that this is 24-bit value, not 16
L9->Y:(R1-2)
#define STATUS L10
L10->X:(R1+0)
#define IPOS F1 ; Integrated position error register
F1->L:(R1-$12) ; Automatically zeroed on motor open loop
#define PDVEL F2 ; Previous desired velocity register
F2->L:(R1-$29) ; Automatically zeroed on motor open loop
#define AVEL P0 ; Floating-point actual velocity
#define DVEL P1 ; Floating-point net desired velocity
#define FE P2 ; Floating-point following error
#define APOS P3 ; Floating-point actual position
#define DPOS P4 ; Floating-point net desired position
#define DACOUT P5 ; Floating-point commanded output
OPEN SERVO CLEAR
COPYREG P0 ; Copy Motor AVEL,DVEL,FE,APOS,DPOS to float P0..4
If (STATUS&$12000 = $12000 Or STATUS&$10000 = 0) ; Test Ix34 mode
IPOS = FLIMIT(ITOF(Ix33)*FE*K23+IPOS, ITOF(Ix63)*ITOF(Ix08)*2)
; Scale Ix63 to include Ix08
EndIf
DACOUT = FLIMIT(ITOF(Ix30)*K16 * ( FE + K128 *(ITOF(Ix32) * DVEL + ITOF(Ix35)
* (DVEL - PDVEL) - ITOF(Ix31) *AVEL) + IPOS), ITOF(Ix69))
PDVEL =DVEL ; Store for next cycle
RETURN(FTOI(DACOUT))
CLOSE
this is a program in the instruction,when I put it into the software to run,it show the error that " PLCC illegal command or format string",why?
this is not a plc program,why it show PLCC illegal? the address of the PID parameter in normal algorithm can use it in the user defined algorithm?wish for your detail instruction!thank you!
-
In programming ,how to express the position error rate?what register can I use?THANK YOU!
-
i have no the card,can you tell me how does the adaptive algorithm work? when we use the adaptive algorithm, during the adjusting,it is to adjust the Pid parameters?thank you
-
If I want to detect the change of the load of the linear motor,for example ,i want to detect the velocity,I can use the M parameters to visit the register,then i can change the PID parameters according to different velocitys. but how can i know the change of the load and how to detect the change of the load? thank you?
-
what is it about the adaptive algorithm of the powerpmac ?is it LMS or LS?
-
Can the pmac write the adaptive control algorithm ?
it is to say that I can write the algorithm that i want to use by myself to control the PID parameters of the motor?
-
parabolic velocity
when I choose the "parabolic velocity "to adjust the PID, what is the mean of the step size and step time?if i want to make the motor reach
perfect performance,how do i choose the step size and step time?
-
I want ask someone who can give me some material about the pmac programming?the pmac user manual is not detail!
for example
OPEN SERVO ; Following lines to be compiled
CLEAR ; Not necessary, but acceptable
COPYREG P30 ; Copy following error into P32
P35=P32*I(ITOF(MTRNUM*100+30))/65536 ; Multiply by gain, scale
RETURN(FTOI(P35)) ; Make an integer and output
CLOSE
on above,there is nowhere in the manual that tell about the "FIOI AND THE ITOF " if i want to konw more about the programming ? where can i reference?
-
Xiaomupeng,
There is no automatic self-adjustment algorithm in the Turbo PMAC firmware, such as adaptive control. In contrast, Power PMAC does have such an adaptive control algorithm in firmware.
However, if you have enough controls knowledge, you can implement your own PLC program to change your controller (PID) gains dynamically. Some PMAC-users use the technique "gain scheduling," some use "adaptive control," etc. The PLC would just modify the gains depending on the "state" or situation the PMAC is encountering. You can also use the "User-Written Servo Algorithms" in an unused motor whose number precedes the motor whose gains you want to vary. This user algorithm can read inputs and vary the gains of subsequent motors at the servo rate. See page 169 of the Turbo PMAC User Manual.
What specifically do you need to do for your application? If you give us more specific details, we can help you better.
i want to use the turbo PMAC to control the linear motor,but influence of the load is different in different time, it is to say different situations have different PID parameters, so i want the PMAC can turning the PID parameters in itself! thank you !
the PLC program can edit the pmac adaptive control algorithm ?
I have used the PLC to change the PID parameters before,but the pid parameters is have adjusted by myself ,then i use the PLC program to change the PID parameters!!! thank charles very much!!!
-
Can the PMAC adjust PID parameters for itself? it is to say the PMAC can adjust the PID parameters according to the different movement ?
it not need manual adjustment!
-
when PMAC2'S digital current loop is used, is it to say that the current loop is closed in the pmac?if it is like that,so what the driver will do ? the driver will not close any loop!!!thank you ?
-
encoder line count (um) ?
electrical cycle (mm) ?
phase position resolution ?
I want to ask what are those meaning for linear motor? please tell the detail! thank you! My grating resolution of my linear motor is 50nm,it is to say that 1VM=20cts!
-
I want to consult that the PID algorithm is in the hardware or in the PC software! thank you!
-
PID
in Turbo PMAC
i am sorry! i want to what is it electrical cycle length?can you tell me the detail? thank you!xiaomupeng2009,
When you do a step move, by default the tuning software is showing the commanded position and actual position of the motor. You can also select to see the "Servo Command" on the right hand vertical axis. This will help you identify an acceptable step size.
The servo effort shows how the PMAC is responding to the step command by commanding different torque/force command to the amplifier.
The size of the step and the time to achieve that is concluded as the bandwidth of the system. If you perform an auto tuning, the Tuning software will give you a conservative bandwidth. When you try to tune your motor manually, try to get to 4 times the bandwidth that auto tuning came up with. (bandwidth is shown as natural frequency under the step result graph)
Through out the step tests, you have to make sure that your servo command is not being saturated for a long time during the step move. Although by definition, you'll have an instantaneous saturation in servo command at the beginning of the step move, if your Kp is too high or step is too big, you'll have saturation.
A step size for a rotary motor is about 1/2 revolution and for a linear motor, is about 1/4 to 1/2 of electrical cycle length.
Regards,
-
PID
in Turbo PMAC
when I adjust the pid parameters, what is it relationship between the step move size and time and the motor accuracy? because different step move size and time will have different PID parameters for the same motor! how can i konw which move size and time will be the most suitable?
PROGRAMM
in Turbo PMAC
Posted