風之鈴音
人法地,地法天,天法道,道法自然~
級別: 探索解密
![]() |
樓主
發(fā)表于: 2008-08-01 17:22
前幾天領導布置下來任務,說原來轉(zhuǎn)速控制精度不夠,要求至少能達到小數(shù)點后一位,于是我就開始琢磨這個問題,并參考了《高手請指教觸摸屏問題》一帖中諸位高手的建議,并在YMMFA的幫助下解決了部分問題,現(xiàn)在將已解決和未解決的問題一并放在這里,希望能有路過的高手幫忙解決,萬分感謝!也希望遇到類似問題的朋友可以有所借鑒,大家一起交流提高。先說已解決的問題,在GT Designer2中把數(shù)據(jù)長度設置成32位,小數(shù)位置自動調(diào)整選中,這時GOT1000上可以輸入帶小數(shù)點的浮點數(shù),但傳到PLC里的還是整數(shù),例如輸入11.2,觸摸屏上顯示11.2,傳到PLC中的數(shù)據(jù)寄存器里卻還是112,于是我設置了個中間寄存器來進行運算處理,DIV D650 K10 D600,這時候D600里存的是整數(shù)11,D601里存的是余數(shù)2(這里其實也就是小數(shù)部分),本來我還想分開處理,后來YMMFA告訴我應該轉(zhuǎn)成二進制然后用EDIV來進行二進制浮點運算,處理完后再轉(zhuǎn)回十進制,也就是說三菱的FX2N的PLC必須轉(zhuǎn)成二進制才可以進行浮點數(shù)運算,在此十分感謝YMMFA的幫助!現(xiàn)在仍存在的問題是,我用SPD X000 K3000 D106取電機的轉(zhuǎn)速顯示到觸摸屏上,齒輪有20個齒,領導給的要求是要精確到小數(shù)點后一位,但SPD好像不支持浮點數(shù),那該如何解決呢?麻煩諸位高手在百忙之中能夠抽空賜教,萬分感謝。海 |
|
---|---|---|
|
ymmfa
不想大江大河,不想浪起潮落,只愿一灣小湖,靜待歲月安好。
級別: 管理員
![]() ![]() |
“說原來轉(zhuǎn)速控制精度不夠,要求至少能達到小數(shù)點后一位” 1,如果用一圈1000個脈沖的編碼器,那么一個脈沖是0.001 圈 2,然后用SPD指令得到單位時間的脈沖量 3,把得到的數(shù)值放到到D10(用MUL指令),觸摸屏上小數(shù)點選擇2位 4,這樣,PLC里的D10是1230個脈沖,在屏上就是1.230 圈 5,有的時候,可能要把PLC里的D10放大10倍 |
|
---|---|---|
本帖最近評分記錄:
|
ymmfa
不想大江大河,不想浪起潮落,只愿一灣小湖,靜待歲月安好。
級別: 管理員
![]() ![]() |
如果編碼器是360度這樣的,不好計算,要用DIV 收到的脈沖=D1 DIV D1 K360 D2 D2 是圈數(shù) 如果計算超過了32767 需要用32位的指令,比如DDIV 有的時候,適當把脈沖數(shù)*10,或者100 這樣比較好 FX1S,F(xiàn)X1N不能計算小數(shù)點,比如12.38 但乘100后就是1238,這樣就可以了,屏上設置2位小數(shù)點,就是12.38顯示出來。 ````````````````````````````````````````````````````````````````````````````````````````````` FX2N根據(jù)每人的編程習慣,用EDDIV,就可以算出有小數(shù)點的數(shù)值,可以實驗“EDDIV K7 K8 D0”看效果 |
|
---|---|---|
|