안녕하십니까 온시스 입니다. 항상 저희 홈페이지를 이용해 주셔서 감사합니다.
Power PMAC CPU 만 있고 Servo IC 가 없는 경우 시뮬레이션을 위한 가상축 설정 방법입니다.
////////////// // Power PMAC 가상축 설정입니다. // Servo IC 없이도 지정 가능합니다. //////////////
//////////////////////////////////////////////////// // Servo IC가 없을 경우 CPU clock을 사용하여 Servo Interrupt를 생성합니다. // Sys.CPUTimerIntr를 1로 놓고 Sys.ServoPeriod로 Servo 주기를 정해주면 됩니다. // Sys.ServoPeriod의 단위는 [ms]입니다. //////////////////////////////////////////////////// //Sys.CPUTimerIntr = 1 //Sys.ServoPeriod = 0.5
//////////////////////////////////////////////////// // #1 Motor[1].Ctrl = Sys.PidCtrl // only need simple PID loop Motor[1].ServoCtrl = 1 Motor[1].pDac = Sys.Idata[1].a Motor[1].pAmpEnable = 0 Motor[1].pAmpFault = 0 Motor[1].pLimits = 0 Motor[1].CaptureMode= 1 // software capture
// needed gains Motor[1].Servo.Kp = 1 Motor[1].Servo.Kvfb = 0 Motor[1].Servo.Kvff = 0 Motor[1].Servo.Kaff = 0 Motor[1].Servo.Ki = 0
// process Dac data EncTable[1].type = 1 EncTable[1].ScaleFactor = 1/65536 EncTable[1].pEnc = Sys.Idata[1].a EncTable[1].index4 = 1 //////////////////////////////////////////////////// // #2 Motor[2].Ctrl = Sys.PidCtrl // only need simple PID loop Motor[2].ServoCtrl = 1 Motor[2].pDac = Sys.Idata[2].a Motor[2].pAmpEnable = 0 Motor[2].pAmpFault = 0 Motor[2].pLimits = 0 Motor[2].CaptureMode= 1 // software capture
// needed gains Motor[2].Servo.Kp = 1 Motor[2].Servo.Kvfb = 0 Motor[2].Servo.Kvff = 0 Motor[2].Servo.Kaff = 0 Motor[2].Servo.Ki = 0
// process Dac data EncTable[2].type = 1 EncTable[2].ScaleFactor = 1/65536 EncTable[2].pEnc = Sys.Idata[2].a EncTable[2].index4 = 1 //////////////////////////////////////////////////// // #3 Motor[3].Ctrl = Sys.PidCtrl // only need simple PID loop Motor[3].ServoCtrl = 1 Motor[3].pDac = Sys.Idata[3].a Motor[3].pAmpEnable = 0 Motor[3].pAmpFault = 0 Motor[3].pLimits = 0 Motor[3].CaptureMode= 1 // software capture
// needed gains Motor[3].Servo.Kp = 1 Motor[3].Servo.Kvfb = 0 Motor[3].Servo.Kvff = 0 Motor[3].Servo.Kaff = 0 Motor[3].Servo.Ki = 0
// process Dac data EncTable[3].type = 1 EncTable[3].ScaleFactor = 1/65536 EncTable[3].pEnc = Sys.Idata[3].a EncTable[3].index4 = 1 //////////////////////////////////////////////////// // #4 Motor[4].Ctrl = Sys.PidCtrl // only need simple PID loop Motor[4].ServoCtrl = 1 Motor[4].pDac = Sys.Idata[4].a Motor[4].pAmpEnable = 0 Motor[4].pAmpFault = 0 Motor[4].pLimits = 0 Motor[4].CaptureMode= 1 // software capture
// needed gains Motor[4].Servo.Kp = 1 Motor[4].Servo.Kvfb = 0 Motor[4].Servo.Kvff = 0 Motor[4].Servo.Kaff = 0 Motor[4].Servo.Ki = 0
// process Dac data EncTable[4].type = 1 EncTable[4].ScaleFactor = 1/65536 EncTable[4].pEnc = Sys.Idata[4].a EncTable[4].index4 = 1 //////////////////////////////////////
그럼.. 항상 즐거운 하루 되십시요.. |