隨著工業現場需求的日益變化,機器視覺在機器人集成項目中的應用越來越廣泛。在視覺與機器人的配合中,要解決的問題有很多,比如視覺的內外參標定,視覺系統和機器人間的標定問題,視覺和機器人間的通訊等等。
其中視覺和機器人間的通訊往往作為重難點存在,不同品牌視覺在和不同品牌機器人通訊時,可供選擇的通訊方案比較多,比如串口通訊、現場總線通訊、以太網通訊等等,其中TCP/IP通訊是一種比較方便也容易使用的通訊方式。
那么,問題來了,如何實現ABB機器人和視覺系統間的TCP/IP通訊呢?
ABB機器人實現TCP/IP通訊的前提是必須要有616-1 PC Interface 選項功能,如下圖是ABB官方對于PCInterface選項功能的介紹:
所以,當我們在真實機器人系統上想實現TCP/IP通訊要先檢查下系統是否含此選項功能,參考如下界面:
TCP是因特網中的傳輸層協議,使用三次握手協議建立連接,過程比較復雜,實際使用中,我們可以用socket編程接口實現服務器與客戶端間的通訊,關于TCP/IP與socket之間的關系大家可以查閱相關資料,下圖是ABB機器人使用socket接口實現通信的過程。
下面我們在RobotStudio軟件中模擬機器人實現此功能的過程(這里我們把機器人作為客戶端client使用):
第一步,創建機器人系統,這里要注意參考圖片把PCInterface選項加入。
通訊相關指令在Communicate指令集下。
第三步,編寫程序,具體程序如下:
SocketCreate socket_vision;
!創建套接字,用于連接遠程計算機,這里注意,下面編程是把機器人作為客戶端,遠程計算機作為服務器的
SocketConnect socket_vision,“127.0.0.1”, 5001;
!連接遠程計算機,這里要寫明遠程計算機的IP地址和通訊雙方共用的端口號。注意,在真實機器人系統上,遠程計算機網口和機器人LAN口或WAN口間要用網線做好連接,并將計算機IP地址設置和機器人IP地址同一網段,此外,端口號不可隨意設置,一般不會用0~1023之間的數字。這里為了和本機上TCP/IP測試工具間實現通訊,IP地址設為回送地址 “127.0.0.1”
SocketSend socket_visionStr:="hello!";
!向遠程計算機發送信息,發送內容可以為具體字符串,也可以是string型變量
SocketReceive socket_visionStr:=string_vision;
!接收來自遠程計算機發送過來的數據,存儲在string_vision變量中,注意,string_vision存儲類型必須為變量,數據類型為string
SocketClose socket_vision;
!關閉通訊
TPErase;
!擦除屏幕上的顯示的文本信息
TPWrite string_vision;
!將 string_vision的文本信息寫入示教器屏幕,驗證寫入的信息和遠程計算機發送的信息是否一致
第四步,測試通訊。
到此,我們就實現了ABB機器人和視覺系統間的通訊啦。
審核編輯:湯梓紅
-
機器人
+關注
關注
211文章
28380瀏覽量
206918 -
以太網
+關注
關注
40文章
5419瀏覽量
171599 -
TCP
+關注
關注
8文章
1353瀏覽量
79055 -
串口通訊
+關注
關注
1文章
258瀏覽量
24914 -
視覺系統
+關注
關注
3文章
334瀏覽量
30697
原文標題:【干貨】如何實現ABB機器人和視覺系統的通訊?
文章出處:【微信號:你身邊的機器人專家,微信公眾號:你身邊的機器人專家】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論