codesys所有函數(shù)的詳細(xì)說(shuō)明_第1頁(yè)
codesys所有函數(shù)的詳細(xì)說(shuō)明_第2頁(yè)
codesys所有函數(shù)的詳細(xì)說(shuō)明_第3頁(yè)
codesys所有函數(shù)的詳細(xì)說(shuō)明_第4頁(yè)
codesys所有函數(shù)的詳細(xì)說(shuō)明_第5頁(yè)
已閱讀5頁(yè),還剩18頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、二、模擬量標(biāo)定庫(kù)AnalogFilterLibrary模擬量標(biāo)定庫(kù)就是指AnalogFilter.lib中的一些庫(kù)函數(shù)。2.1CUT功能塊功能描述:把輸入值進(jìn)行預(yù)處理,調(diào)整斜率,消除兩端非線性影響。調(diào)整效果見(jiàn)圖:功能塊如下圖:CuiInputOutputPAR_InputlLowLimitLowLimrl一PARJnputHighUfflltHlghUmlt輸入:(1)Input,UINT型,要處理的信號(hào)。(2) PAR_InputILowLimit,UINT型,用來(lái)控制輸出的下限。當(dāng)Input<=256*PAR_InputILowLimit時(shí)輸出為0。(3) PAR_InputHigh

2、Limit,UINT型,用來(lái)控制輸出的上限。當(dāng)Input>=256*PAR_InputHighLimit時(shí)輸出就為0。輸出:(1)Output,UINT型,處理完的信號(hào)。(4) LowLimit,BOO理,Input<=256*PAR_InputILowLimit時(shí)LowLimit為T(mén)RUE(5) HighLimit,BOO理,Input>=256*PAR_InputHighLimit時(shí)HighLimit為T(mén)RUE2.2 HP功能塊功能描述:設(shè)置一個(gè)死區(qū),把死區(qū)以?xún)?nèi)的值都設(shè)為0。功能如圖:功能塊如下圖:HPInpulOutputPARCutLknit輸入:(1)Input,U

3、INT型,輸入信號(hào)。.(2)PAR_CutLimit,UINT型,死區(qū)控制參數(shù)。當(dāng)Input<=65535*PAR_CutLimit%時(shí)輸出為0。輸出:(1)Output,UINT型,處理完的信號(hào)。2.3 JoyFilter功能塊功能描述:JoyFilter塊是一個(gè)雙向的模擬量標(biāo)定塊,也就是說(shuō)它對(duì)輸入的模擬量進(jìn)行預(yù)處理,把輸出范圍調(diào)整為-3276732767。功能塊如下圖:JoyFilterftnalflnputQu口吐DErrorHghD_JoV5lickDirSvifcl-NEGErrarLowPAR_negfhiJoysuck口SMtcriP曰岫第mgPr?_grdlJoyt)tc

4、KDiroditehNCGivi8njPAR_Z?roJcvUiclcDirgwifchPO8AndM&j2DPAR_DaadBandFA巨_卜四Procjiu刈u(yù)iP.R_rosFrogresoldn3AP_MinCricrriffertriCepar.FaijitQriDeiavFAR_CirSwitchDignoSticNotUseOtpunibg輸入:(1) Analoginput,UINT型,模擬量的輸入信號(hào)。(2) DI_JoystickDirSwitchPOS,BOO理,正向微動(dòng)開(kāi)關(guān)。當(dāng)PAR_DirSwitchDiagnosticNotUse為FALSE時(shí),此時(shí)又手柄向

5、正向移動(dòng),那么只有正向微動(dòng)開(kāi)關(guān)TRUEOUTPU時(shí)會(huì)有輸出。(3) DI_JoystickDirSwitchNEG,BOO理,負(fù)向微動(dòng)開(kāi)關(guān)。當(dāng)PAR_DirSwitchDiagnosticNotUse為FALSE時(shí),此時(shí)又手柄向負(fù)向移動(dòng),那么只有負(fù)向微動(dòng)開(kāi)關(guān)TRUEOUTPU時(shí)會(huì)有輸出。(4) PAR_NegFull,UINT型,負(fù)向輸入的調(diào)節(jié)參數(shù)。取值范圍:0255,主要用于當(dāng)負(fù)向輸入最大時(shí),調(diào)節(jié)參數(shù)使得OUTPUTS為負(fù)向最大。(5) PAR_POSFull,UINT型,正向輸入的調(diào)節(jié)參數(shù)。取值范圍:0255,主要用于當(dāng)正向輸入最大時(shí),調(diào)節(jié)參數(shù)使得OUTPUTS正負(fù)向最大。(6) PAR_

6、Zero,UINT型,零輸入的調(diào)節(jié)參數(shù)。取值范圍:0255,主要用于當(dāng)手柄在零位時(shí),即零輸入時(shí),調(diào)節(jié)參數(shù)使得OUTPUTS為零。(7) PAR_DeadBandUINT型死區(qū)設(shè)置參數(shù)。取值范圍:0100。當(dāng)輸入進(jìn)入?yún)?shù)設(shè)置范圍,輸出為零(8) PAR_NegProgression,SINT型。取值范圍:-100100,設(shè)置負(fù)向輸出緩沖曲線度,手柄負(fù)向輸出值相對(duì)于輸入值的一個(gè)響應(yīng)曲線,曲線如圖:(9) PAR_PosProgression,SINT型。取值范圍:-100100,設(shè)置正向輸出緩沖曲線度,手柄正向輸出值相對(duì)于輸入值的一個(gè)響應(yīng)曲線。(10) PAR_MinErrorDifference

7、,UINT型,取值范圍:0100,設(shè)置出錯(cuò)范圍,當(dāng)輸入超出范圍時(shí),激活ErrorHigh或ErrorLow開(kāi)關(guān),并使輸出為零。(11) PAR_FaultChDelay,UINT型,取值范圍:0255,過(guò)載延時(shí)。(12) PAR_DirSwitchDiagnosticNotUse,BOOL型,此參數(shù)為T(mén)RUE時(shí),微動(dòng)開(kāi)關(guān)無(wú)效,為FALSE時(shí),微動(dòng)開(kāi)關(guān)有效輸出:(1) OutputEable,BOO國(guó),輸出使能,為T(mén)RU比塊才會(huì)有輸出。(2) Output,INT型,調(diào)整后的信號(hào)量,輸出數(shù)值范圍-3276732767(3) ErrorHigh,BOOL型,當(dāng)輸入超出PAR_Full+5000范圍

8、時(shí),ErrorHigh為T(mén)RUE輸出置零。(4) ErrorLow,BOOL型,輸入超出PAR_Zero-PAR_MinErrorDifference范圍,ErrorHigh為T(mén)RUE并把輸出置零。(5) JoystickDirSwitchPOSMissing,BOO理,正向微動(dòng)開(kāi)關(guān)出錯(cuò)時(shí),值為T(mén)RUE(6) JoystickDirSwitchNEGMissing,BOOL型負(fù)向微動(dòng)開(kāi)關(guān)出錯(cuò)時(shí),值為T(mén)RUE(7) JoystickDirSwitchPOSAndNEGOn,BOOL型,正、負(fù)向微動(dòng)開(kāi)關(guān)同時(shí)為T(mén)RUE時(shí),值為T(mén)RUE2.4 JoystickAllnputOutOfRange功能塊功

9、能描述:本功能塊是用來(lái)實(shí)現(xiàn)對(duì)一個(gè)模擬量輸入的觀察。功能塊如下圖:Jo/stickAIInputOjtORangeAllrputErrorinpuirooHiahOiJtPAR_PosFullErrorinpitTocLowOutFAR_Nt*yFull一PAP_MErrarDilfereftcd輸入:(1) Allnput,UINT型,需要觀察的模擬量信號(hào)。(2) PAR_PosFull,UINT型,正向最大調(diào)整參數(shù)。(3) PAR_NegFull,UINT型,負(fù)向最大調(diào)整參數(shù)。(4) PAR_MinErrorDifference,UINT型,設(shè)置出錯(cuò)范圍,當(dāng)輸入超出范圍時(shí),激活ErrorIn

10、putTooHighOut或ErrorInputTooLowOut開(kāi)關(guān),并使輸出為零。輸出:(5) ErrorInputTooHighOut,BOO理,AIInput>PAR_PosFull*256+PAR_MinErrorDifference,則輸出為T(mén)RUE(6) ErrorInputTooLowOut,BOO國(guó),AIInput<PAR_NegFull*256-PAR_MinErrorDifference,則輸出為T(mén)RUE2.5 JoystikDirSwitchDiagnostic功能塊功能描述:本功能塊是用來(lái)觀察手柄模擬量輸入時(shí)微動(dòng)開(kāi)關(guān)的狀態(tài)。功能塊如下圖:SJkftir&a

11、mp;wlLhCHuriu.UiAuladliipulDIJayalickOrSwItchFOSJ口FitkDirawitchPOSUinlngJcystkIDirSwikhHEOWisalng味DikdwiEhNEQ.rlVQMiktiPO&UidNEQUnrjw_PD5fjPflF.NegFulpF_?err»PAR中4:0口白1即輸入:(1) AnalogInput,UINT型,需要觀察的模擬量信號(hào)。(2) DI_JoystickDirSwitchPOS,BOO國(guó),正向微動(dòng)開(kāi)關(guān)。當(dāng)PAR_DirSwitchDiagnosticNotUse為FALSE時(shí),此時(shí)又手柄向正向

12、移動(dòng),那么只有正向微動(dòng)開(kāi)關(guān)TRUEOUTPU時(shí)會(huì)有輸出。(3) DI_JoystickDirSwitchNEG,BOO理,負(fù)向微動(dòng)開(kāi)關(guān)。當(dāng)PAR_DirSwitchDiagnosticNotUse為FALSE時(shí),此時(shí)又手柄向負(fù)向移動(dòng),那么只有負(fù)向微動(dòng)開(kāi)關(guān)TRUEOUTPU時(shí)會(huì)有輸出。(4) PAR_PosFull,UINT型,正向最大調(diào)整參數(shù)。(5) PAR_NegFull,UINT型,負(fù)向最大調(diào)整參數(shù)。(6) PAR_Zero,UINT型,零輸入的調(diào)節(jié)參數(shù)。主要用于當(dāng)手柄在零位時(shí),即零輸入時(shí),調(diào)節(jié)參數(shù)使得OUTPUTS為零。(7) PAR_FaultOiDelay,UINT型,過(guò)載延時(shí)。輸出

13、:(1) JoystickDirSwitchPOSMissing,BOOL1,正向微動(dòng)開(kāi)關(guān)出錯(cuò)時(shí),值為T(mén)RUE(2) JoystickDirSwitchNEGMissing,BOOL型負(fù)向微動(dòng)開(kāi)關(guān)出錯(cuò)時(shí),值為T(mén)RUE(3) JoystickDirSwitchPOSAndNEGOn,BOO國(guó),正、負(fù)向微動(dòng)開(kāi)關(guān)同時(shí)為T(mén)RUEM,值為T(mén)RUE2.6 MeanValue功能塊功能描述:對(duì)給的數(shù)組進(jìn)行求平均數(shù)操作。功能塊如圖:muutoutputPAR_LenghtReset輸入:(1) Input,UINT型,數(shù)據(jù)輸入。(2) PAR_Length,UINT型,取數(shù)長(zhǎng)度,如值為5,則每5個(gè)值求一次平均

14、值,并輸出到output。(3) Reset,BOO國(guó),復(fù)位信號(hào),值為T(mén)RUEM不進(jìn)行平均值運(yùn)算。輸出:(4) Output,UINT型2.7 PedalFilter功能塊功能描述:PedalFilter功能塊是一個(gè)單向的標(biāo)定模塊,主要用于把輸入模擬量進(jìn)行預(yù)處理,把輸出量范圍調(diào)整到065535。功能塊如下圖:PedalFilter-ftnaloginputOutput一尸所_FullErrorHigh一FR_ZeroEtrcrLowPi*R_DEadBand一PAR_ProeressionPAF?_MinFrriirPifT?renep一OutputEnable輸入:(1) AbalogInp

15、ut,UINT型,來(lái)自于傳感器的輸入量OutPutEnable,BOOL型,使能開(kāi)關(guān)。參數(shù)值為T(mén)RUE時(shí),模塊按當(dāng)前值輸出;為FALSE時(shí),保持上一次輸出值。(2) PAR_Full,UINT型,取值范圍:0255,此參數(shù)用于調(diào)整最大輸出值,當(dāng)輸入最大時(shí),使輸出接近65535,小于65535。(3) PAR_Zero,INT型,取值范圍:0255,此參數(shù)用于調(diào)整零位,使輸出為零。(4) PAR_DeadBandUINT型,取值范圍:0100,設(shè)置死區(qū),當(dāng)輸入進(jìn)入?yún)?shù)設(shè)置范圍,輸出為零。(5) PAR_Progression,SINT型,取值范圍:-100100設(shè)置輸出緩沖曲線度。(6) PAR

16、_MinErrorDifference,UINT型,取值范圍:0100,設(shè)置出錯(cuò)范圍,當(dāng)輸入超出范圍時(shí),激活ErrorHigh或ErrorLow開(kāi)關(guān),并使輸出為零。OutputEnable,BOO1M,使能開(kāi)關(guān)。輸出:(1) Output,UINT型,取值范圍:065535,輸出信號(hào)。(2) ErrorHigh,BOOL1,高位出錯(cuò)開(kāi)關(guān)。輸入PAR_Full+PAR_MinErrorDifference范圍,ErrorHigh為T(mén)RUE并把輸出置零。(3) ErrorLow,BOO理,低位出錯(cuò)開(kāi)關(guān),輸入<PAR_Zero-PAR_MinErrorDifference范圍,ErrorHig

17、h為T(mén)RUE并把輸出置零。2.8RC功能模塊功能描述:InputOutputR8能塊是濾波功能塊,它是對(duì)傳感器信號(hào)的輸入信號(hào)進(jìn)行濾波。濾波公式為:y(z)x(z).0.6+ydz?1).。/Sarjal5虬功能塊如下圖:Ri?InputOutpui輸入:(1) Input,UINT型,輸入信號(hào)。輸出:(2) Output,UINT型,輸出信號(hào)。2.9 Scale功能塊功能描述:0-65535的量,如下圖:Scale功能塊的主要作用是把一個(gè)065535量變換成為兩個(gè)上!、上而|山I功能塊如下圖:ScaleInputOutputFAR_ZeroPosValuePAR_PosFullPARNcgFu

18、ll輸入:(1) Input,UINT型(2) PAR_Zero,INT型,設(shè)置零位,當(dāng)輸入為PAR_Zero*256時(shí),輸出為0。(3) PAR_PosFull,UINT型,當(dāng)input值>=PAR_PosFull*256時(shí),輸出為65535,PosValue為T(mén)RUE(4) PAR_NegFull,UINT型,當(dāng)input值<=PAR_NegFull*256,輸出為-65535,PosValue為FALSE。輸出:(5) Output,UINT型(6) PosValueBOO",PAR_Zero*256>Input值,值為T(mén)RUE;PAR_Zero*256<

19、;Input值,值為FALSEo2.10 Transfer功能塊功能描述:Transfer模塊用于設(shè)置緩沖曲線度,當(dāng)Zero為T(mén)RUE,輸出為零,當(dāng)Full為T(mén)RUE,而Zero不為零時(shí),輸出為65535。緩沖曲線度公式:Y2表正向,Y3表負(fù)向。x=0,0.001.1progr二50y(x)=x3y1(x)=xprogry1(x).(100progr)y2(x,progr)-y(x)100100y3(x,progr)二1Jy(1一x).3;y1(1-x).(10°*prog)100100曲線如下圖:功能塊如下圖:TransferinpuiOitpuizeroFullPAR.PrOQr

20、esGiorOutputEnable輸入:(1) Input,UINT型(2) Zero,BOO理,當(dāng)Zero為T(mén)RUE日輸出為零。(3) Full:BOO理,當(dāng)Full為T(mén)RUE,而Zero不為零時(shí),輸出為65535。(4) PAR_Progression,INT型,曲線度設(shè)置參數(shù)。(5) OutputEnable,BOO理,當(dāng)此參數(shù)值為T(mén)RUE寸,模塊按預(yù)定算法執(zhí)行;為FALSE時(shí),保持上一次輸出輸出:(1) Output,UINT型三、CANIIIEC庫(kù)本庫(kù)就是一些基于CAN2.0協(xié)議的一些功能塊。也就是Can2.lib中的一些函數(shù)與功能塊。1.1 CAN_II_BUFF_INIT函數(shù)功

21、能描述:本功能塊的主要作用是用來(lái)初始化CAN接受信息對(duì)象的。注意CAN_II_BUFF_INIT,必須用在CAN_II_INIT前面。本函數(shù)是BOO國(guó)的。函數(shù)塊如下圖:(1) ENABLEBOO國(guó)。函數(shù)的使能變量。(2) OBJ,對(duì)象號(hào),輸入數(shù)值,114,0是用來(lái)傳輸?shù)奶?hào)。(3) ID,信息ID,11或29位ID。(4) EXTENDEDBOO理,用來(lái)擴(kuò)展ID為29位。輸出:(1) ERRORBOO國(guó)。當(dāng)OBJ超出范圍時(shí)有輸出。1.2 CAN_II_GET_MSG功能塊功能描述:當(dāng)CAN總線上有新的CAN言息是接受數(shù)據(jù)。功能塊如下圖:CANIIGETMSGMESSAGEEXTENDEDIDDL

22、CDATA1DA1TA2DATA3DATA4DATA5DATAGDATA7BXTA0CUSTOMERNEWMTA輸入:(1) ESSAGE用戶想接受的信息。輸出:(2) EXTENDEDBOO理,當(dāng)信息ID為29位時(shí)為T(mén)RUE(3) ID,信息的ID。(4) DLC信息的長(zhǎng)度。(5) DATAn信息的數(shù)據(jù),其中n=DLG(6) CUSTOME咄有定義。(7) NEW_DATABOO理,當(dāng)緩存中有新的數(shù)據(jù)時(shí)為T(mén)RUE1.3 CAN_II_INIT函數(shù)功能描述:CAN_II設(shè)備的初始化函數(shù)。功能塊如下圖:CAFJ_II_INITUenableSPEEDG日MLGBMS-TERM_RES輸入:(1)

23、 ENABLEBOO理,使函數(shù)可以工作。(2) SPEEDCAN備的波特率。(3) GBML(GloBalMaskLong)29bit全球碼。(4) GBMSGloBalMaskShort)11bit全球碼。(5) TERM_RESCAN勺接受終端On/Off.1.4 CAN_II_RTR函數(shù)功能描述:發(fā)送遠(yuǎn)距離傳送請(qǐng)求。本函數(shù)是BOOL型的。函數(shù)塊如下圖:CAMJLRTRENABLEERROR0日輸入:(1) ENABLEBOO理,使能。(2) OBJ選擇對(duì)象號(hào),113。輸出:(1) ERROR當(dāng)輸出為T(mén)RUE時(shí),就是選擇的對(duì)象好有問(wèn)題。3.5 CAN_II_STATUS功能塊功能描述:本功

24、能快就是用來(lái)返回CAN設(shè)備的狀態(tài)。功能塊如下圖:CANILSTATLSLECTXOKRXOKEWARMCOUHT一ausoFFcojrvr輸入:無(wú)輸出:(1) LEG就是返回最近的一個(gè)出錯(cuò)的代碼。(2) TXOK為T(mén)RUE時(shí)就表示傳輸成功。(3) RXOK為T(mén)RUE時(shí)就表示接受成功。(4) EWARN_COUNT錯(cuò)記數(shù)器。(5) BUSOFF_COUN聰線關(guān)閉記數(shù)器。3.6 CAN_IIRX功能塊功能描述:從更高的message對(duì)象來(lái)接受新的CAN(言息。功能塊如下圖:CAMJIRXEXTENDEDIDDLCDMA1一DATA2DATA3一DATA4DATA5一DATA6一DATA7一口ATM

25、CUSTOMERMEWDA7A輸出:(1) EXTENDE,DBOOL1,擴(kuò)展信息的ID位為29位。(2) ID,信息ID。(3) DLC,數(shù)據(jù)長(zhǎng)度1.8。(4) DATAn,信息數(shù)據(jù),其中n=DLC(5) CUSTOMER沒(méi)有定義。(6) NEW_DATA當(dāng)有新的數(shù)據(jù)到了緩存中時(shí)為T(mén)RUE3.7 CAN_IITX功能塊功能描述:向更高的message對(duì)象來(lái)發(fā)新的CAN(言息。功能塊如下圖:CANJITXENABLEEMENDEDIDDLCDATA1D/TA2DATA3CTA4DATA5DATA6WBDATA6輸入:(1) ENABLE,BOO理,使能。(2) XTENDEDBOOLl,擴(kuò)展信

26、息的ID位為29位。(3) ID,信息ID。(4) DLC,數(shù)據(jù)長(zhǎng)度1.8。(5) DATAn,信息數(shù)據(jù),其中n=DLCCAN雎用說(shuō)明:接收數(shù)據(jù):1.可以采用CAN_II_BUFF_INIT和CAN_II_GET_MSG己合使用,自動(dòng)將CAN總線上ID和CAN_II_BUFF_INIT相同ID的數(shù)據(jù)自動(dòng)放到相應(yīng)的緩存里面,建議如果接收的數(shù)據(jù)有限的話使用CAN_II_BUFF_INIT和CAN_II_GET_MSGi數(shù)接收數(shù)據(jù),CAN_II_BUFF_INIT應(yīng)在CAN_II_INIT之前。2.也可以只使用CAN_IIRX,但是如果使用CAN_IIRX函數(shù)必須判斷接收回來(lái)的ID和我需要的ID是否

27、相等,因?yàn)镃AN_IIRX將總線上所有的數(shù)據(jù)都接收回來(lái)。發(fā)送數(shù)據(jù):使用CAN_IITX發(fā)送CANB據(jù)由于發(fā)送緩存的限制,每一次最多可以發(fā)送8個(gè)不同CANID的數(shù)據(jù),考慮到每次發(fā)送的可靠建議每次程序循環(huán)一次發(fā)送5個(gè)不同CANID的數(shù)據(jù)。四、CANOPENIEC庫(kù)下面主要介紹的是一些基于CANOPEN、議的庫(kù)函數(shù)。也就是在canopen.lib中的一些函數(shù)與功能塊。4.1 INITFUNCTION4.1.1 CANOPEN_END_INr®數(shù)功能描述:本函數(shù)的主要作用是用來(lái)結(jié)束CANOPEN初始化。本函數(shù)是BOO理的。函數(shù)塊如下圖:CAMnPEN_END_lftllTENABLE輸入:(

28、1) ENABLEBOO理,使能。4.1.2 CANOPEN_INIT_SD(B數(shù)功能描述:對(duì)SDO寸象開(kāi)始初始化。函數(shù)圖如下:CAMOPENJNIT_F>DOEM細(xì)UEI匚S3O_TYPESDO輸入:(1) ENABLEBOO理,使能。ID,BYTE型。(3) SDO_TYPEBOOLl,FALSE時(shí)為T(mén)X型,TRUE寸為RX型。(4) SDOBYTE型,SDOW編號(hào)。4.1.3 CANOPEN_START_INITS數(shù)功能描述:本函數(shù)就是CANOPEN開(kāi)始初始化。本函數(shù)是BOO理的。函數(shù)塊如下圖:CAIdOPEN_8TART_INrr一日dAOLE輸入:(1) ENABLEBOO1M

29、,使能。4.2 PDOHANDLINGFUNCTIONSFRO4.2.1 CANOPEN_ADD_NODE_RECEIVE_E功能描述:增加CANOPE接收的一個(gè)節(jié)點(diǎn)號(hào)(4路PDO。本函數(shù)是BOO理的。函數(shù)圖如下:CAMOPEM.ADODE_RECEIRDMEMADLECRROFl一PDOTYPEg匚LECT一ID輸入:(1) ENABLEBOO理。使能。PDO_TYPE_SELE£TBOO理,PDO的類(lèi)型選擇,F(xiàn)ALSE為T(mén)PDOSgl,TRUE為RPDOM(3)ID,本PDO是節(jié)點(diǎn)ID的。輸出:(1)ERROR當(dāng)ID超出范圍時(shí)ERROR1輸出。4.2.2CANOPEN_ADD_R

30、ECEIVE_PDO功能描述:增加接收一路PDO本函數(shù)是BOO1M的。函數(shù)塊如下圖:CANOPEN_ADD_RECEIVE_PDO匚NABLEERRORPDO_7YPE_SELECTIDFD。輸入:(1)ENABLEBOO理。使能。PDO_TYPE_SELECTBOO理,PDOW類(lèi)型選擇,F(xiàn)ALSE為T(mén)PDOSgl,TRUE為RPDOM(3) ID,本PDO是節(jié)點(diǎn)ID的。(4) PDOBYTE型。PDOt,14。輸出:(1) RROR當(dāng)ID或PDOS出范圍時(shí)ERROR1輸出。4.2.3 CANOPEN_ADD_TRANSMIT_NODEg敷功能描述:虛擬CANOPENt送的一個(gè)節(jié)點(diǎn)號(hào)(4路PD

31、O。本函數(shù)是BOO理的。函數(shù)圖如下:rAhnPEN_iDD_IRiNSh.i|IT_NODE_iriEMELE=rrorLPLO_TVPC_g£L:CTID輸入:(1) ENABLEBOO理。使能。(2) PDO_TYPE_SELECTBOO國(guó),PDOW類(lèi)型選擇,F(xiàn)ALSE為T(mén)PDOSgl,TRUE為RPDOSL(3) ID,本PDO是節(jié)點(diǎn)ID的。輸出:(1) ERROR,當(dāng)ID超出范圍時(shí)ERROR1輸出。4.2.4 CANOPEN_ADD_TRANSMIT_PDO功能描述:虛擬CANOPEN:送的一路PDO本函數(shù)是BOO理的。函數(shù)圖如下:CAIJAPFg郵田MIT一叩nEhl/BL

32、EERORPD0_7¥PE_SELECT-IDFDO輸入:(1) EABLE,BOO理。使能。FALSE為T(mén)PDOSgl,TRUE為。本函數(shù)是BOO1M的。(2) PDO_TYPE_SELECTBOO理,PDO勺類(lèi)型選擇,RPDOM(2) ID,本PDO是節(jié)點(diǎn)ID的。(3) PDO,BYTE型。PDO#,14。輸出:(1) ERROR當(dāng)ID或PDC超出范圍時(shí)ERRORf輸出。4.3SDOHANDLINGFUNCTIONS4.3.1 ADD_VERSION0數(shù)功能描述:把用戶的串放入CANOPEN勺版本對(duì)象中去(16#100A)函數(shù)圖如下:ADD_VER3IONENABLE-JO輸入:

33、(1) ENABLEBOO1M,使能。(2) VERSTRING型,用戶定義的串。4.3.2 CANOPEN_GET_SD函數(shù)功能描述:CANOPEN收一個(gè)SDO本函數(shù)是BOO1M的。函數(shù)圖如下:CANcPEN_Grr_sd-SDO-INDEX3U0INDEKOFFSET輸入:(1)ENABLEBOO理,使能。SDOBYTE型,SDOo(3) INDEX,WOR型,對(duì)象的索引號(hào)。(4) SUBINDEXWORffi,對(duì)象的子索引號(hào)。(5) OFFSETBYTE型,數(shù)據(jù)在接受時(shí)的偏移量。4.3.3 CANOPEN_POINTER_SHAIO:功能描述:把用戶定義的變量通過(guò)CANOPEN、線,用S

34、DO寸象發(fā)在總線上。本函數(shù)是BOO國(guó)的。函數(shù)如下圖:CANCiPEN_F'C»INTER_SHAEOJtlengthare輸入:(1) ENABLEBOO理,使能。(2) OUTDWORD,用戶要放的變量。它是一個(gè)指針操作。(3) Length,BYTE型,所用的對(duì)象的長(zhǎng)度。(4) Size,BYTE型,所用的對(duì)象的長(zhǎng)度。4.3.4 CANOPEN_PUT_SDO數(shù)功能描述:向網(wǎng)絡(luò)上的一個(gè)節(jié)點(diǎn)發(fā)送一個(gè)SDO本函數(shù)是BOO國(guó)的函數(shù)塊如下圖:CANOPEN_PUT_SD<|ENAHLBSDOINDEXMl心*orr2LTLENGTH輸入:(1) ENABLEBOO理,使能。

35、(2) SDO,BYTE型,SD8。(3) INDEX,WORDil,對(duì)象的索引號(hào)。(4) SUBINDEX,WORD1,對(duì)象的子索引號(hào)。(5) OFFSETBYTE型,數(shù)據(jù)在接受時(shí)的偏移量。(6) LENGTHBYTE型,SDO寸象的長(zhǎng)度。4.3.5 CANOPEN_SHAR函數(shù)功能描述:把用戶定義的串通過(guò)CANOPEN、線,用SDO寸象發(fā)在總線上。本函數(shù)是BOO理的。函數(shù)塊如下圖:輸入:(1) ENABLE,BOO理,使能。(2) OUT,STRING型,用戶定義的串。(3) Length,BYTE型,所用的對(duì)象的長(zhǎng)度。(4) Size,BYTE型,所用的對(duì)象的長(zhǎng)度。4.3.6CANOPE

36、N_UPDATA_SHAH敢功能描述:把用戶定義的串通過(guò)CANOPEN、線,用SDO寸象發(fā)在總線上。本函數(shù)是函數(shù)圖如下:BOO理的。(1) ENABLE,BOO理,使能。(2) OUTSTRING型,用戶定義的串。(3) share_no,BYTE型,哪一個(gè)要更新。(4) subindex,BYTE型,哪一個(gè)地方要更新。4.4state中的函數(shù)與功能塊4.4.1 CANOPEN_DIAGNOSE能塊功能描述:給出CAN以及程序循環(huán)的有關(guān)信息。功能塊如下圖:CANaPEN_DAGNC)9EBUS_CFF_COUNTEWARKI-COL'HTCCLC_TINCHIOH_C"1CL

37、E_TIMFtTRLOCFCOUbJT輸出:(1) BUS_OFF_COUNTBYT理,總線關(guān)閉記數(shù)。(2) EWARN_COUNBYTES,錯(cuò)誤與警告的數(shù)量。(3) TXBUFF_FULL_COUNT3YTES,記CA股備傳輸緩沖區(qū)滿的次數(shù)。(4) CYCLE_TIMEBYT四1,程序最后一個(gè)循環(huán)所用的時(shí)間,單位是毫秒。(5) HIGH_CYCLE_TIMEBYTES,程序一個(gè)循環(huán)所用的最大時(shí)間,單位是毫秒。(6) CTRLOOP_COUNDWOg程序循環(huán)記數(shù)。4.4.2 CANOPEN_IS_THIS_MASTE函數(shù)功能描述:給出本節(jié)點(diǎn)是不是主節(jié)點(diǎn)。本函數(shù)是BOO型的。Master/Sla

38、ve對(duì)應(yīng)True/False。函數(shù)圖如下:CNOPENJ£_THlS_MAoTERYE8輸出:(1) YES,BOO理,Master/Slave對(duì)應(yīng)True/False。4.4.3 CANOPEN_NODE_STATE能塊功能描述:本功能塊給出了本節(jié)點(diǎn)的當(dāng)前操作狀態(tài)信息。功能塊如下圖:nAhlOPEN_rJF_STATENOUEIDDUMMYDlSCdNN=CT£DCONNECTINGFFRPARIMGPREPAREDQF匚R冏nQMLERROF?輸出:(1) NODEIDBYTES,單元本身的ID號(hào)。(2) DUMM,YBOO型,單元是否是虛擬的。(3) DISCONNE

39、CTEDBOO型,單元是否沒(méi)有連接在總線上。(4) CONNECTIONGBOO型,單元是否連接在總線上。(5) PREPARINGBOO型,單元是否準(zhǔn)備好。(6) PREPAREDBOO型,設(shè)備停止,準(zhǔn)備運(yùn)行。OPERATIONALBOO型,CanOpen設(shè)備正在運(yùn)行。(8)ERRORBOO型,不是當(dāng)前操作的狀態(tài),是上一個(gè)操作的狀態(tài)。4.4.4CANOPEN_START_NODES功能描述:?jiǎn)?dòng)CANOPE限設(shè)備。函數(shù)圖如下:ENABLE|輸入:(1)ENABLEBOO理,使能。五、CELL_CHECK/CELL_CHECK_4$就是CELL_CHECK_4.lib庫(kù)文件中的功能塊。本庫(kù)中就

40、只有CELL_CHECK_4個(gè)功能塊。功能描述:本功能塊主要是一個(gè)脈沖檢測(cè)功能塊。當(dāng)輸入的脈沖信號(hào)必須在150個(gè)程序循環(huán)中有所改變,此時(shí)ALLUP輸出為T(mén)RUE否則為FALSE函數(shù)圖如下:CELLCHECK_4HeartBIHeartB3Heart04All*H3_3&ndHtTime_iHETIme_2HBrini94輸入:(1) HeartBI,BOO國(guó),要檢測(cè)的脈沖信號(hào)1。(2) HeartB2,BOO國(guó),要檢測(cè)的脈沖信號(hào)2。(3) HeartB3,BOO國(guó),要檢測(cè)的脈沖信號(hào)3。(4) HeartB4,BOO國(guó),要檢測(cè)的脈沖信號(hào)4。輸出:(1) ALLUp,BOO理,輸出檢測(cè)結(jié)果

41、的信號(hào)。(2) HB_Send,BOO1M,功能塊本身的脈沖信號(hào)。(3) HBTime_1,USINT型,對(duì)于信號(hào)1的程序循環(huán)記數(shù)器,當(dāng)本記數(shù)器的值大于150時(shí)ALLUp輸出為FALSE否貝U為T(mén)RUE(4) HBTime_2,USINT型,對(duì)于信號(hào)2的程序循環(huán)記數(shù)器,當(dāng)本記數(shù)器的值大于150時(shí)ALLUp輸出為FALSE否貝U為T(mén)RUE(5) HBTime_3,USINT型,對(duì)于信號(hào)3的程序循環(huán)記數(shù)器,當(dāng)本記數(shù)器的值大于150時(shí)ALLUp輸出為FALSE否貝U為T(mén)RUE(6) HBTime_4,USINT型,對(duì)于信號(hào)4的程序循環(huán)記數(shù)器,當(dāng)本記數(shù)器的值大于150時(shí)ALLUp輸出為FALSE否貝U

42、為T(mén)RUE六、HWHW庫(kù)也就是指的是在hw_n.lib文件中的一些功能塊。6.1 CONFIGURE_PI功能塊功能描述:脈沖輸入設(shè)置,它是通過(guò)比較A,B兩個(gè)通道輸入的脈沖信號(hào)來(lái)給出一個(gè)正轉(zhuǎn)或反轉(zhuǎn)的數(shù)值。如果只計(jì)算單脈沖輸入,CONFIGURE_P的CHANNELA等于相應(yīng)的值,CHANNELB勺值設(shè)置為16。如果是要計(jì)算正反轉(zhuǎn),A相輸入和B相輸入相位差90度,則CHANNEA和CHANNEB的值等于相應(yīng)的CHANNE值。寄存器地址IW130IW137IW150IW157的值存放的是頻率值,IW120IW127、IW160IW167存放的是計(jì)數(shù)值,在CODESY聯(lián)機(jī)監(jiān)控時(shí)只顯示A相輸入的頻率值

43、。高速脈沖輸入端能夠檢測(cè)的最高頻率和程序的大小有關(guān),當(dāng)程序越大,即程序循環(huán)一周需要的時(shí)間越長(zhǎng),脈沖輸入端能夠檢測(cè)的頻率就越低。當(dāng)實(shí)際的輸入頻率超過(guò)控制器能夠檢測(cè)的最大頻率則在相應(yīng)的寄存器里的頻率值和極數(shù)值就會(huì)不準(zhǔn)確。當(dāng)調(diào)用RESET_P函數(shù)時(shí)當(dāng)相應(yīng)的參數(shù)值就是CHANNELA值時(shí),相應(yīng)的計(jì)數(shù)值就歸零。參考IW與通道號(hào),以及輸出點(diǎn):IWChannel#PlusecountIW2023202420232024130012013111211322122133312313441241355125136612613771271508016016015191161161152102162162153113

44、163163154124164164155135165165156146166166157157167167功能塊如下圖:DOMnGURE_PIA一B輸入:(1) A,BYTES,通道A,即輸入信號(hào)的通道號(hào)。(2) B,BYTES,通道B,即輸入信號(hào)的通道號(hào)。6.2 GET_TUPLB!數(shù)功能描述:這是一個(gè)系統(tǒng)保留函數(shù)。是一個(gè)POINTERTOBYT型函數(shù)。函數(shù)圖如下:(1) ID,BYTE1,要選擇的TUPLE勺號(hào)。(2) Selection,BOO型,當(dāng)為T(mén)RUE寸,是選擇TUPLESetboot,當(dāng)為T(mén)RUE寸,是選擇Application。6.3 LOAD_USER_PROGMM功能描述:本函數(shù)是BOO型的。函數(shù)圖如下:LOftD_USER_PR-Dummy輸入:11) DummyBOO型,6.4 PARAMS_STOF®數(shù)功能描

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論