一.需求分析:
工業機械人主要應用於一些焊接,搬運等工作站上,他們往往使用plc作為主控,或者利用工業機械人本身的軟plc系統作為主控,來協調機械人和外部io,感測器,外部軸,執行單元;那麼什麼時候需要上位機呢?最主要的可以區分為兩大塊:1.機器視覺;2.離線程式設計;
機器視覺在市場上區分也可分為兩大塊:乙個是智慧型相機,另外乙個是pc-based自開發的視覺系統。後一種的市場份額目前超過50%,機械人和視覺結合主要應用在,跟蹤,識別,定位等等場合,以焊縫跟蹤這個特定的應用場合為例:視覺系統檢查焊縫的偏差,由畫素座標轉為機械人可用的座標(一般轉為機械人基座標係),然後機械人調整位置使得焊槍對準焊縫。由於焊接有速度要求,這個週期最好控制在150-200ms以內。這就需要視覺系統和機械人控制部分在local範圍內執行,所以需要開發機械人上位機系統,pc一般都有網口,機械人也有網口。這樣相對於其它匯流排類如profinet等節約成本,且除錯較為方便,容易產生復用性。
總結上來,機械人上位機開發需要這幾個功能:上位機能夠控制機械人運動(相對座標,絕對座標,連續插補等),機械人變數,io讀取和寫入,機械人子程式呼叫,讀取機械人當前座標,座標系轉換等等功能;
二.架構設計:
機械人上位機介面本質上是乙個通訊程式,我們需要借助通訊的通用架構來解決這個問題,在這個領域最經典就是request-response和publish-subscribe架構了。
request-response:主要用於機械人下發控制命令,控制機械人運動,request一般是下發機械人的絕對座標,response回的是機械人是否收到命令,當前機械人是否是ready的狀態;
publish-subscribe:主要用於讀取機械人狀態(位置,關鍵變數,io,force)等;機械人端publish這些資訊,上位機subscribe這個event,當收到報文後解析,解析出當前機械人的狀態資訊;
三.詳細設計:
落實到具體的詳細設計通訊有三個難點,第一是通訊連線過程的管理,第二是報文的設計,第三是異常的處理;對應機械人上位機介面來說最難的還是報文的設計以及異常的處理:
通訊連線過程的管理這部分主要看那種模式的,是阻塞socket還是非阻塞socket,阻塞socket比較簡單,可以應用的request-response這個模式;非阻塞socket可以用於pub-sub這個環節,可以使用如select模型這些方法,來管理輪詢這個過程,檢測是否收到資料,也可用callback的方式;
報文的設計需要考慮設計幀結構,幀結構根據下位機的不同往往有三種形式,一種是字串;一種是數字(有可能為16進製制)組成的幀結構;還有一種xml資料流(極少用);但無論哪一種,都需要區分報文頭+報文這兩種模式,報文頭包含報文的功能碼資訊,長度資訊等等;
字串模式:這個模式的好處是不用考慮大小端的問題,但需要考慮如何斷開資訊幀,如採用,#等等作為分隔符;
數字幀結構:這個模式的好處是可擴充套件性更好一些,不需要字串轉數字等操作;
異常的處理是難點中的難點,首先機械人連線建議最好為長連線,用心跳包文來保持這個來保持這個功能,如果必須用短連線,重複連線機械人,有比較把斷開的連線作為異常丟擲,但需要注意的是丟擲前必須要斷開執行器的控制(因為如果執行器還在運動,而機械人已經停止連線了,這就失去對下位機的控制了,在工業現場屬於重大錯誤)
用之前用的乙個圖來總結
四.評估:
風險評估:該架構已經穩定執行幾家主流的工業機械人上了,最大的風險還就是異常的處理……;
可擴充套件評估:每一種機械人可作為乙個節點合併統一起來,從控制的角度上看,要遠遠好於ros的moveit。因為ros的moveit功能太弱。很多沒有連續運動,io等選項;
先寫道這裡,想到什麼,還有如果大家有問題的話,我會解釋。
cleanRobot(掃地機械人上位機)
摘要 udp通訊,與ros進行udp通訊,進而與掃地機通訊 當前版本 1.1 作者 聶咸豐 完成日期 2019年7月10日 取代版本 1.0 作者 張雪平 完成日期 2019年5月12日 ifndefcarudp h definecarudp h include include include in...
UR機械人上位機通訊 python版(一)
以ur5機械人為例,通過30003,30004埠實現不同的控制需求。本篇文章先針對30003埠。import socket import struct import math import numpy as np host 192.168.2.23 the remote host port 3000...
堆垛機械人程式設計技巧 機械人智慧型堆垛的控制方法與流程
本發明涉及一種堆垛系統控制方法,具體涉及機械人智慧型堆垛的控制方法。背景技術 隨著我國經濟的持續發展和科學技術的突飛猛進,使得機械人在碼盤 塗膠 點焊 弧焊 噴塗 搬運 測量等行業有著相當廣泛的應用。包裝的種類 工廠環境和客戶需求等將碼盤變成包裝工廠裡一塊難啃的骨頭。為了克服這些困難,碼盤裝置的各個...