资源描述:
《IMAC 在运行中改变反馈》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、TurboPMACProgramExamplesApr-2005ChangingFeedbackontheFlySometimesmultiplesensorsarerequiredtocoverthefullrangeofmotionforanaxis.Inonecommoncase,multiplelinearscales,eachonewithitsownreadhead,areneededtohandlethefulllinearrangeofmotion.Switchingbetweenthefeedbacksensorsmustbedone“on
2、thefly”,withnodisturbancetothemotion.ItiseasyinTurboPMACcontrollerstoswitchontheflybetweensensorsofequivalentresolution,bychangingthesourceaddressofthefeedbackI-variable.Theonlyspecialrequirementisthatthe“lastsourceposition”registerbeupdatedtoreflectthepositionofthenewsensorinthesa
3、meservocycleastheaddressischanged.ThisrequirementnecessitatesthattheactualchangebedoneinaforegroundprogramsuchasPLCC0oranOpenServoalgorithmforaspare“motor”onTurboPMAC.IfPLCC0isused,itmustbeconfirmedthattheseoperationscancompletereliablybeforethenextservointerruptoccurs.Inthisexampl
4、e,therearethreepositionsensorsforMotor1.Initsproperrange,asensorisusedsimultaneouslyforposition-loopfeedback,velocity-loopfeedback,andcommutation-anglefeedback.EachofthesefunctionshasitsownaddressI-variabletobechanged,anditsown“lastposition”registerwhosecontentsmustbechangedwhenthe
5、sensorisswitched.Notethatthepositionandvelocityloopsusedprocessedpositionvaluesfromtheencoderconversiontable(ECT),butcommutationuses“raw”positionvaluesfromencodercountersintheServoASIC.;Substitutionsanddefinitions;AddressI-variables#defineMtr1PosFdbkAdrI103;Regforposition-loopfeedb
6、ack#defineMtr1VelFdbkAdrI104;Regforvelocity-loopfeedback#defineMtr1CommFdbkAdrI183;Regforcommutationfeedback;Sensorsourceaddresses(processedvaluesinconversiontable)#defineSensor1PosAdr$003501;ECTresult0(fromI8000)#defineSensor2PosAdr$003502;ECTresult1(fromI8001)#defineSensor3PosAdr
7、$003503;ECTresult2(fromI8002);M-variablesforprocessedsensorpositions#defineSensor1PosM8000Sensor1Pos->X:$003501,0,24,S;1stresultlineofECT#defineSensor2PosM8001Sensor2Pos->X:$003502,0,24,S;2ndresultlineofECT#defineSensor3PosM8002Sensor3Pos->X:$003503,0,24,S;3rdresultlineofECT;Sensor
8、rawcounteraddresses(inServ