bhqt
級(jí)別: 論壇版主
|
看前面的《【西門(mén)子S7-200】有問(wèn)有答》欄目比較喜人,也給網(wǎng)友帶來(lái)方便實(shí)惠,在此新開(kāi)300的欄目,希望大家喜歡,積極支持。 西門(mén)子S7-300的相關(guān)問(wèn)題都可以在此提出。我們會(huì)盡最大能力去,用最快的時(shí)間幫兄弟們解決。提問(wèn)題的時(shí)候,請(qǐng)注意以下幾點(diǎn): 【1】請(qǐng)寫(xiě)明您使用的300系列PLC的具體型號(hào),最好是訂貨號(hào)!例如:6ES7 315-2AG10-0AB0 【2】請(qǐng)?jiān)敿?xì),具體寫(xiě)明您要我給解答的問(wèn)題,不要將技術(shù)問(wèn)題升級(jí)到學(xué)術(shù)問(wèn)題,也不要將點(diǎn)問(wèn)題牽扯到面上。 【3】請(qǐng)留下您的聯(lián)系方式,郵箱、QQ、電話等 在300的方面,我也只起個(gè)拋磚引玉的作用,【cvlsam】【YE_W】【sjm213】三位是主力,同時(shí)也希望,熟悉300系統(tǒng)的朋友積極參與,我們一起學(xué)習(xí),一起提高。 [ 此貼被bhqt在2008-03-06 09:09重新編輯 ] |
|
---|---|---|
本帖最近評(píng)分記錄:
|
hhjauto
級(jí)別: 探索解密
|
CPU314,在OB35中調(diào)用FC11、FC12、FC13,這3個(gè)FC的內(nèi)容大致相似,都是處理些數(shù)據(jù)然后調(diào)用PID功能塊FB41,現(xiàn)在的問(wèn)題是FB41的背景DB里CYCLE參數(shù)設(shè)置為T(mén)#500MS,而在CPU屬性里OB35時(shí)間間隔設(shè)置為100MS,這樣的話實(shí)際FB41執(zhí)行的時(shí)間間隔是怎樣的?以O(shè)B35為準(zhǔn)還是以背景DB里的設(shè)置的為準(zhǔn)?會(huì)否出現(xiàn)什么問(wèn)題?希望好心人能給予解答,謝謝!! |
---|---|
|
hhjauto
級(jí)別: 探索解密
|
CPU314,在OB35中調(diào)用FC120、FC121、FC122,這3個(gè)FC的內(nèi)容大致相似,都是處理些數(shù)據(jù)然后調(diào)用PID功能塊FB41,現(xiàn)在的問(wèn)題是FB41的背景DB里CYCLE參數(shù)設(shè)置為T(mén)#500MS,而在CPU屬性里OB35時(shí)間間隔設(shè)置為100MS,這樣的話實(shí)際FB41執(zhí)行的時(shí)間間隔是怎樣的?以O(shè)B35為準(zhǔn)還是以背景DB里的設(shè)置的為準(zhǔn)?會(huì)否出現(xiàn)什么問(wèn)題?希望好心人能給予解答,謝謝!! |
---|---|
|
hhjauto
級(jí)別: 探索解密
|
在FC中,定義臨時(shí)變量#TEMP12、#TEMP4、#TEMP5、#TEMP6、#TEMP7均為DWord類(lèi)型。#TEMP12用于計(jì)算指針偏移量,#TEMP4-7用于指向4個(gè)ARRY[1……112]BOOL類(lèi)型的數(shù)組)STL代碼如下: OPN #IN0 //打開(kāi)相應(yīng)的DB …… …… L DBW 8 //DBW8保存了一個(gè)值為112的INT數(shù)據(jù) L 8 /I SLD 3 L P#DBX 0.0 //這里為何是用P#DBX0.0而不是用P#0.0?可否用P#0.0? +D T #TEMP12 //相加之后#TEMP12的內(nèi)容是怎樣的? L P#DBX 10.0 T #TEMP4 L #TEMP12 +D T #TEMP6 //我的問(wèn)題是:用到P#DBX byte.bit來(lái)相加,則高字節(jié)的內(nèi)容是否相加?對(duì)尋址有無(wú)影響? L #TEMP12 +D T #TEMP7 L #TEMP12 +D T #TEMP5 L DBW 8 M001: T #TEMP3 …… …… A DBX[#TEMP4] A DBX[#TEMP5] = DBX[#TEMP6] …… …… L #TEMP3 LOOP M001 |
---|---|
|
hhjauto
級(jí)別: 探索解密
|
就我的理解,將P#DBX byte.bit裝入到32位指針中,指針的內(nèi)容為1000_0100_0000_0BBB_BBBB_BBBB_BBBB_BXXX。而若是將這樣的2個(gè)32位指針相加,那么第25、26、27位是否一樣地也相加呢??則相加的結(jié)果是否會(huì)導(dǎo)致尋址不再指向DBX了??然而別人程序就是這么編的應(yīng)該是沒(méi)錯(cuò)的,有點(diǎn)想不通。我是新手,剛接觸S7300,望前輩或是明白人給予指點(diǎn),感激不盡。 |
---|---|
|
hhjauto
級(jí)別: 探索解密
|
感謝deanhao的指點(diǎn),也就是說(shuō)尋址正確的原因在于A DBX[#TEMP4]這樣的指令中已經(jīng)指定了尋址DBX了是嗎?就是說(shuō)區(qū)域內(nèi)尋址一般使用P#byte.bit裝入指針中,而在區(qū)域間尋址才使用P#M byte.bit這樣的數(shù)據(jù)裝入指針中,而后面的指令就可以直接使用A #TEMP4的形式了。PLCSIM電腦上有裝,還不熟悉怎么監(jiān)視,還需慢慢摸索。總之很感謝你的回答……一個(gè)人摸索真的是很郁悶的一件事情。此論壇真是個(gè)好地方。 |
---|---|
|
hhjauto
級(jí)別: 探索解密
|
“而后面的指令就可以直接使用A #TEMP4的形式了”,似乎不對(duì),這樣的指令似乎是錯(cuò)的,必須使用A DBX[#TEMP4],百度了一下,總算是明白了,寄存器間接尋址支持X [AR1,P#byte.bit]的形式。區(qū)域代碼的作用就在這里是吧?? |
---|---|
|