ABB 機器人 IRBP系列轉臺的一段代碼注釋

PROC IndexToStn1()                  //檢測變位機狀態   并設置要運行到的角度位置   并對不同的GetNextPartAdv返回值情況   進行處理 VAR bool bActive;VAR jointtarget jtCurrent;            //聲明一個位置變量IF (NOT bInterchCalib1) CalibIntch1;       ! reset inpos signals used in vcReset soLS_1_INPOS;Reset soLS_2_INPOS;                          //復位變位機的輸出bActive:=IsMechUnitActive(INTERCH);            //是否變位機激活IF (NOT bActive) ActInterch1;                  //激活變位機jtCurrent:=CJointT();                   // 得到當前角度! get parts for stationsGetNextPartAdv 1,padvTmp1\statusCode:=retCode1;//得到存儲的partdata類型的數據的值, 并將GetNextPartAdv 返回狀態賦值給retCode1GetNextPartAdv 2,padvTmp2\statusCode:=retCode2;IF (retCode1=0) THENjtCurrent.extax.eax_e:=padvTmp1.procAngle.eax_e;  //如果返回成功,將partdata類型數據的eax_e的值賦值給當前jtCurrentELSEjtCurrent.extax.eax_e:=0;               //否則賦值0         并進行處理text_res_no:=TextResTabGet("CellText");sHeader:=TextResGet(text_res_no,218);IF (retcode1=-1) THENsMsgArr{1}:=TextResGet(text_res_no,202)+" 1";sMsgArr{2}:=TextResGet(text_res_no,214);sMsgArr{3}:="";sMsgArr{4}:="";ErrWrite\W,sHeader,sMsgArr{1}\RL2:=sMsgArr{2}\RL3:=sMsgArr{3}\RL4:=sMsgArr{4};ELSEIF (retcode1=-2) THENsMsgArr{1}:=TextResGet(text_res_no,204)+" 1";sMsgArr{2}:=TextResGet(text_res_no,205)+" 1";sMsgArr{3}:=TextResGet(text_res_no,214);sMsgArr{4}:="";ErrWrite\W,sHeader,sMsgArr{1}\RL2:=sMsgArr{2}\RL3:=sMsgArr{3}\RL4:=sMsgArr{4};ENDIFENDIFIF (retCode2=0) THENjtCurrent.extax.eax_f:=padvTmp2.loadAngle.eax_f;ELSEjtCurrent.extax.eax_f:=0;text_res_no:=TextResTabGet("CellText");sHeader:=TextResGet(text_res_no,218);IF (retcode2=-1) THENsMsgArr{1}:=TextResGet(text_res_no,202)+" 2";sMsgArr{2}:=TextResGet(text_res_no,213);sMsgArr{3}:="";sMsgArr{4}:="";ErrWrite\W,sHeader,sMsgArr{1}\RL2:=sMsgArr{2}\RL3:=sMsgArr{3}\RL4:=sMsgArr{4};ELSEIF (retcode2=-2) THENsMsgArr{1}:=TextResGet(text_res_no,204)+" 2";sMsgArr{2}:=TextResGet(text_res_no,205)+" 2";sMsgArr{3}:=TextResGet(text_res_no,213);sMsgArr{4}:="";ErrWrite\W,sHeader,sMsgArr{1}\RL2:=sMsgArr{2}\RL3:=sMsgArr{3}\RL4:=sMsgArr{4};ENDIFENDIF! apply interchange positionjtCurrent.extax.eax_d:=nInterchStn1;       //將存儲的變位機水平軸位置賦值給當前IF (TaskRunRob()) THEN                     //判定程序運行于哪個平臺MoveAbsJ jtCurrent,sdInterch1,fine,tool0;                      ELSE%"MoveExtJ"% jtCurrent,sdInterch1,fine;        //如果是外部軸    則運動到指定位置ENDIFIF (NOT RobOS()) Set soLS_1_INPOS;         //并設置相應的變位機狀態給PLCWaitTime nTorqueTime;                                                   IF (NOT bActive) DeactInterch1;           //如果在運行這段程序之前   變位機沒有激活   則 運行這段程序之后也保持運行之前的狀態  ENDPROC

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/255950.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/255950.shtml
英文地址,請注明出處:http://en.pswp.cn/news/255950.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

如何寫一個bootloader

聲明:本文為學習Codeproject文章的個人總結性文章, 原文:http://www.codeproject.com/Articles/664165/Writing-a-boot-loader-in-Assembly-and-C-Part 本人開發環境: 操作系統:Ubuntu 32位(64位的會有push…

定時執行某段程序

有時候我們需要每天 定時的 自動 去執行某段程序,那么這個功能如何實現呢? 經過百度,定時器就可以實現,總結如下: 我用控制臺寫了一個程序,用來在指定時間內 打印 “我執行了” 上面就是程序的運行結構&…

【error】深度優先搜索TypeError: unhashable type: ‘list‘

查網上的原因是: python字典的key不支持list類型和dict類型,需要轉換 但是我沒有使用到key,后來仔細查看發現是增加了一個裝飾器導致的,functions.lru.cache 把裝飾器注釋掉即可 # 利用深度搜索進行查找 lru_cache(None) def …

Okhttp 插入緩存攔截器 解析

我們在做網絡請求的時候,如果網絡請求過于頻繁而且請求的數據變動不大,或者基本沒有變動,這個時候如果沒有緩存功能,我們想一下 會浪費掉多少資源,一次請求刷新一次,去請求一次,不但會消耗用戶的…

淺談PROFINET IO通信的實時性

PROFINET由PROFIBUS國際組織(PROFIBUS International,PI)推出,是新一代基于工業以太網技術的自動化總線標準。作為一項戰略性的技術創新,PROFINET為自動化通信領域提 供了一個完整的網絡解決方案,囊括了諸如…

目標

學習計劃以及目標---------------------------------------------------------------------------------------------------------------------------------------------------------------- 正文 在上大學之前,可以說我完全是一個…

今日頭條核心技術“個性推薦算法”揭秘

今日頭條核心技術“個性推薦算法”揭秘 最近面試華興資本, 他們比較關注今日頭條算法的實現, 今天特轉載網上 今日頭條算法解密【IT168 評論】互聯網給用戶帶來了大量的信息,滿足了用戶在信息時代對信息的需求,也使得用戶在面對大…

PROFINET及其同步實時通訊分析

1 概述 PROFINET實時以太網是由Profibus International(PI)組織提出的基于以太網的自動化標準。從2004年4月開 始,PI與Interbus Club總線俱樂部聯手,負責合作開發與制定標準。PROFINET構成從I/O級直至協調治理級的基于組件的分…

【劍指offer15.二進制中1的個數】——位操作(左移右移等)

目錄 二進制的表示 二進制的位操作 應用: 劍指offer15.統計二進制中1的個數(多種方法,位右移操作、與操作等) 轉自:https://www.jianshu.com/p/3a31065a8e58 紅色為自己添加 我們都知道在計算機中所有的信息最終都…

java 異常處理機制(java 編程思想)

一、概念  “異常”這個詞有“我對此感到意外”的意思。問題出現了,你也許并不清楚該如何處理,但你的確知道不應該置之不理;你要停下來,看看是不是有別人或在別的地方,能夠處理這個問題。只是在當前的環境中還沒有足夠…

怎樣在CentOS 7.0上安裝和配置VNC服務器

這是一個關于怎樣在你的 CentOS 7 上安裝配置 VNC 服務的教程。當然這個教程也適合 RHEL 7 。在這個教程里,我們將學習什么是 VNC 以及怎樣在 CentOS 7 上安裝配置 VNC 服務器 。 我們都知道 這是一個關于怎樣在你的 CentOS 7 上安裝配置 VNC 服務的教程。當然這個教…

MOTOMAN機器人網絡控制的實現

最初程序員在Unix系統下使用Berkeley Socket編寫網絡程序,隨著Windows操作系統的普及,Microsoft、Sun等公司聯合開發了Winsock接口API。它實質上是一種進 程間通信,將之從單機環境擴展到網絡環境以適合于開發主機/客戶機通信程序。網絡通信的…

【劍指offer】——【python中return函數中的and和or表達式的返回值】

目錄 1、# and 結果為真,返回最后一個表達式的結果,若結果為假返回第一個為假的表達式的結果 2、# or 結果為真,返回第一個為真的表達式的結果,若結果為假,返回最后一個表達式的結果 3、應用[劍指 Offer 64. 求12…n…

Spring Cloud構建微服務架構:消息驅動的微服務(入門)【Dalston版】

2019獨角獸企業重金招聘Python工程師標準>>> 之前在寫Spring Boot基礎教程的時候寫過一篇《Spring Boot中使用RabbitMQ》。在該文中,我們通過簡單的配置和注解就能實現向RabbitMQ中生產和消費消息。實際上我們使用的對RabbitMQ的starter就是通過Spring C…

CXF 客服端調用報錯

服務端已經發布了WSDL,現在在客服端生成web service客服端代碼,在eclipse中新建一個project,然后new->web services->web service client生產客戶端代碼 在調用的時候報如下錯誤 解決:缺少axis相應的jar包,加入包…

20145225 《信息安全系統設計基礎》第10周學習總結

cp1.c 進行復制文件的操作,需要有源文件和目的文件,第一次命令沒有加入所以沒有正常完成復制文件的操作fileinfo.c 用來實現顯示文件信息。先判斷命令是否有操作數,有的話才能繼續進行下去,如果沒有報錯就打印出來相關文件信息&am…

做演員是圓夢 做生意學會面對現實

田樸珺是一位擁有多重身份的女性。她是一名演員,也是一位商人,還擔任過電影《中國合伙人》的制片人。 作為演員,田樸珺的作品并不是很多,也一直不溫不 火。但這并不代表她將放棄演藝生涯。她表示,如果機會合適&…

【深度學習】——模型評估指標MAP計算實例計算

目錄 一、知識儲備 1、IOU——交集面積與并集面積之比 2、混淆矩陣(TP、FP、FN、TN) 問題1:上面的TP等具體是如何計算得到的? 3、精度precision&召回率recall 二、ap計算實戰 1、計算流程 1)準備數據&#xf…

第 52 章 Web Server Optimization

系統配置 Intel(R) Xeon(TM) CPU 3.00GHzMemory 4GEthernet adapter 1000M52.1. ulimit 查看 ulimit ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited file size (blocks, -f) unlimited pending signals …

hdu5489 Removed Interval dp+線段樹優化

現在看這題居然直接秒了。。。去年看的時候還以為神題。。 設以第i項為結尾的lis前綴為f[i],以第j項為結尾的lis后綴為g[i],如果求出f[i]和g[j],然后枚舉i,快速找到最大的滿足a[j]>a[i]的g[j]就可以了。注意到如果將f[i]從后往…