色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

人工智能套裝 Ai Kit 橫向測評

大象機器人科技 ? 來源:大象機器人科技 ? 作者:大象機器人科技 ? 2023-02-21 16:16 ? 次閱讀

本文涉及到的產品

1 mechArm 270

2 mycobot 280

3 mypalletizer 260

4 AI kit

主題內容

今天的文章的主題主要介紹一下跟aikit 套件搭配的三款機械臂,它們之間分別有什么不一樣的地方。

前言

假如說你有一臺機械臂的話,你會用它來干什么呢?簡單的控制機械臂動一動;讓它重復執行某個軌跡;還是讓它能夠在工業上代替人類去工作。在隨著時代的進步,機器人頻繁的出現在我們的周圍,它們代替我們從事危險的工作,服務人類等。今天我們一起來看一下,機械臂是如何在一個放工業場景中進行工作的。

介紹

what is AI kit?

人工智能套裝是集視覺、定位抓取、自動分揀模塊為一體的入門級人工智能套裝。

基于Linux系統,在ROS搭建1:1仿真模型,可通過開發軟件實現機械臂的控制,能夠快速入門學習人工智能基礎知識。

poYBAGP0eQOAUhTGAA1XyKoGdb8101.png

目前我們的人工智能套裝可以實現對顏色識別和抓取,對圖像識別和抓取。

該套件對于剛入門機械臂,機器視覺的用戶來說是非常有幫助的,能夠帶你快速的了解人工智能項目是如何搭建起來的,進一步的了解機器視覺是如何跟機械臂進行聯動的。

接下來我們簡單了解一下,能夠與aikit套裝適配的三款機械臂

機械臂

myPalletizer 260

myPalletizer260是一款四軸的碼垛機械臂,全包裹輕量級四軸碼垛機械臂,整體去鰭設計,小巧緊湊,便于攜帶。myPalletizer本體重量960g,負載250g,工作半徑260mm,專為創客,教育設計,有豐富的擴展接口,ai套件模擬工業場景,可以進行機器視覺的學習。t 套裝適配的三款機械臂

poYBAGP0eYaAJv85AAVZ_RS0h2o679.png

mechArm 270

mechArm 270 是一款小六軸機械臂,結構是中心對稱結構(仿工業結構)。mechArm 270本體重量1kg, 負載250g,工作半徑270mm,設計緊湊便攜,小巧但功能強大,操作簡單,能與人協同、安全工作。

poYBAGP0ecCAUyRIAAw9CE7ZCn0611.png

myCobot 280

myCobot 280 是世界上最小最輕的六軸協作機械臂(UR結構),可以根據用戶需求進行二次開發,實現用戶個性化定制。myCobot 本體自重850g,有效負載250g,有效工作半徑280mm,體積小巧但功能強大,既可搭配多種末端執行器適配多種應用場景,也可支持多平臺軟件的二次開發,滿足科研教育、智能家居,商業探索等各種場景需求。

pYYBAGP0eeyAQLfLAAKnA9CSQqQ245.png

我們先來看個視頻aikit 是如何跟這三款機械臂運行的。

內容

視頻地址https://youtu.be/9J2reiPYNxg

視頻內容展現了,顏色識別和智能分揀功能,還有圖像識別和智能分揀功能。

我們簡單介紹一下 aikit 是如何實現的。(以顏色識別和智能分揀功能為例)

該人工智能項目主要運用到了兩個模塊

●視覺處理模塊

●計算模塊(處理eye to hand的之間的換算)

視覺處理模塊:

OpenCV (Open Source Computer Vision) 是一個開源的計算機視覺庫,用于開發計算機視覺應用程序。OpenCV 包含了大量用于圖像處理、視頻分析、基于深度學習的目標檢測和識別等功能的函數和算法

poYBAGP0elKAMLlSAAAGwzpIfvQ280.png

我們使用了OpenCV來對圖像進行處理。從攝像頭得到的視頻進行處理,從而獲取視頻中的信息例如顏色,圖像,視頻中的平面坐標(x,y)等。將獲取到的信息傳遞給處理器進行下一步的處理。

下面是處理圖像的部分代碼(顏色識別)

# detect cube color
def color_detect(self, img):
	# set the arrangement of color'HSV
	x = y = 0
	gs_img = cv2.GaussianBlur(img, (3, 3), 0) # Gaussian blur
	# transfrom the img to model of gray
	hsv = cv2.cvtColor(gs_img, cv2.COLOR_BGR2HSV)

	for mycolor, item in self.HSV.items():
		redLower = np.array(item[0])
		redUpper = np.array(item[1])
		# wipe off all color expect color in range
		mask = cv2.inRange(hsv, item[0], item[1])
		# a etching operation on a picture to remove edge roughness
		erosion = cv2.erode(mask, np.ones((1, 1), np.uint8), iterations=2)
		# the image for expansion operation, its role is to deepen the color depth in the picture
		dilation = cv2.dilate(erosion, np.ones(
			(1, 1), np.uint8), iterations=2)


		# adds pixels to the image
		target = cv2.bitwise_and(img, img, mask=dilation)
		# the filtered image is transformed into a binary image and placed in binary
		ret, binary = cv2.threshold(dilation, 127, 255, cv2.THRESH_BINARY)
		# get the contour coordinates of the image, where contours is the coordinate value, here only the contour is detected
		contours, hierarchy = cv2.findContours(
			dilation, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)

		if len(contours) > 0:
			# do something about misidentification
			boxes = [
				box
			for box in [cv2.boundingRect(c) for c in contours]
			if min(img.shape[0], img.shape[1]) / 10
			< min(box[2], box[3])
			< min(img.shape[0], img.shape[1]) / 1
			]
			if boxes:
				for box in boxes:
					x, y, w, h = box
				# find the largest object that fits the requirements
				c = max(contours, key=cv2.contourArea)
				# get the lower left and upper right points of the positioning object
				x, y, w, h = cv2.boundingRect(c)
				# locate the target by drawing rectangle
				cv2.rectangle(img, (x, y), (x+w, y+h), (153, 153, 0), 2)
				# calculate the rectangle center
				x, y = (x*2+w)/2, (y*2+h)/2
				# calculate the real coordinates of mycobot relative to the target
				if mycolor == "red":
					self.color = 0

				elif mycolor == "green":
					self.color = 1

				elif mycolor == "cyan" or mycolor == "blue":
					self.color = 2

				else:
					self.color = 3


		if abs(x) + abs(y) > 0:
			return x, y
		else:
			return None

只是獲取我們的圖像信息還不夠,得處理得到的信息,傳遞給機械臂去執行命令。這里就運用到了計算模塊。

計算模塊

NumPy (Numerical Python) 是一個開源的 Python 庫,主要用于數學計算。NumPy 提供了大量用于科學計算的函數和算法,包括矩陣運算、線性代數、隨機數生成、傅里葉變換等。

我們要處理圖像上的坐標,換算成真實的坐標,這有一個專業名詞就是eye to hand。我們用python通過numpy計算庫來計算我們的坐標,最后發送給機械臂去執行分揀。

下面是計算的部分代碼

    while cv2.waitKey(1) < 0:
       # read camera
        _, frame = cap.read()
        # deal img
        frame = detect.transform_frame(frame)
        if _init_ > 0:
            _init_ -= 1
            continue
        # calculate the parameters of camera clipping
        if init_num < 20:
            if detect.get_calculate_params(frame) is None:
                cv2.imshow("figure", frame)
                continue
            else:
                x1, x2, y1, y2 = detect.get_calculate_params(frame)
                detect.draw_marker(frame, x1, y1)
                detect.draw_marker(frame, x2, y2)
                detect.sum_x1 += x1
                detect.sum_x2 += x2
                detect.sum_y1 += y1
                detect.sum_y2 += y2
                init_num += 1
                continue
        elif init_num == 20:
            detect.set_cut_params(
                (detect.sum_x1)/20.0,
                (detect.sum_y1)/20.0,
                (detect.sum_x2)/20.0,
                (detect.sum_y2)/20.0,
            )
            detect.sum_x1 = detect.sum_x2 = detect.sum_y1 = detect.sum_y2 = 0
            init_num += 1
            continue

        # calculate params of the coords between cube and mycobot
        if nparams < 10:
            if detect.get_calculate_params(frame) is None:
                cv2.imshow("figure", frame)
                continue
            else:
                x1, x2, y1, y2 = detect.get_calculate_params(frame)
                detect.draw_marker(frame, x1, y1)
                detect.draw_marker(frame, x2, y2)
                detect.sum_x1 += x1
                detect.sum_x2 += x2
                detect.sum_y1 += y1
                detect.sum_y2 += y2
                nparams += 1
                continue
        elif nparams == 10:
            nparams += 1
            # calculate and set params of calculating real coord between cube and mycobot
            detect.set_params(
                (detect.sum_x1+detect.sum_x2)/20.0,
                (detect.sum_y1+detect.sum_y2)/20.0,
                abs(detect.sum_x1-detect.sum_x2)/10.0 +
                abs(detect.sum_y1-detect.sum_y2)/10.0
            )
            print ("ok")
            continue

        # get detect result
        detect_result = detect.color_detect(frame)
        if detect_result is None:
            cv2.imshow("figure", frame)
            continue
        else:
            x, y = detect_result
            # calculate real coord between cube and mycobot
            real_x, real_y = detect.get_position(x, y)
            if num == 20:
                detect.pub_marker(real_sx/20.0/1000.0, real_sy/20.0/1000.0)
                detect.decide_move(real_sx/20.0, real_sy/20.0, detect.color)
                num = real_sx = real_sy = 0

            else:
                num += 1
                real_sy += real_y
                real_sx += real_x

我們的項目是開源的可以在GitHub上找到

https://github.com/elephantrobotics/mycobot_ros/blob/noetic/mycobot_ai/ai_mycobot_280/scripts/advance_detect_obj_color.py

區別

在比較了視頻和內容還有程序的代碼,這三款機械臂的框架是一樣的,只需要在數據上稍微作以修改就能夠運行成功。

比較這三款機械臂有什么不同,大致有兩點。

其一本質上就是來比較四軸和六軸的機械臂在實際的運用中有什么不同點。(myPalletizer 和mechArm/myCobot之間的對比)

我們來看一下四軸機械臂和六軸機械臂之間粗略的對比

pYYBAGP0fGCAVmx8AAGdos0GCR4625.png

從視頻中可以看出,不論是四軸機械臂還是六軸機械臂在AI Kit 所工作的范圍都是足夠的,它們兩者最大的區別就是在程序啟動的過程中,myPalletizer的動作簡單快捷,只有四個關節在運動,能夠高效且穩定的執行任務;myCobot需要調動六個關節,比myPalletizer多兩個關節,在程序中的計算量是比myPalletizer的計算量要大,所花費的時間要長一些(小型場景)。

我們簡單總結一下,在場景固定的情況下,我們在考慮如何選擇機械臂的時候可以優先考慮機械臂的工作范圍。在符合工作范圍的機械臂的情況下,高效和穩定將是必要的條件。假如說現在有一個工業場景類似于我們的AI kit的話,四軸機械臂將會是優先選擇。當然六軸機械臂可以在更大的空間范圍內操作,并且可以實現更復雜的運動。它們可以在空間內進行回轉運動,而四軸機械臂則無法做到這一點。因此,六軸機械臂通常更適合用于需要精確操作、復雜運動的工業應用。

其二兩款都是六軸機械臂,他們最主要的不同是結構的不同。mechArm是中心對稱結構的機械臂,myCobot是UR結構的協作型機械臂。我們可以比較這兩種結構在實際運用場景中有何不同。

pYYBAGP0fH-AHsJKAAYGVDoiWMI132.png

這里是這兩款機械臂的參數規格

pYYBAGP0fKCAOiG9AAX6GJYuYEY203.png

這兩者的結構不同導致了它們運動的范圍不一樣。以mechArm為例,中心對稱結構的機械臂是由三對相對的關節組成的,每對關節的運動方向相反。這種結構的機械臂具有較好的平衡性,能夠抵消關節間的力矩,使機械臂保持穩定。

poYBAGP0fLuAEEZSAAy_-4LGlFo603.png

在視頻中展示,mechArm在運行中也是比較穩定的。

看到這你可能就會產生疑問,那myCobot不就一無是處了嘛?當然不是,UR結構的機械臂更加靈活,能夠實現更大范圍的運動,適用于較大的應用場合。myCobot更重要的一點它是協作型機械臂,它具有較好的人機交互能力,能夠與人類協作進行工作。六軸協作型機械臂通常用于生產線上的物流和裝配工作,以及醫療、研究和教育等領域。

總結

就如開頭所說,AI kit套裝搭載三款機械臂的不同本質上是如何選擇一款合適的機械臂來使用。如果你是出于某個特定的場景去選擇機械臂的話,就需要根據場景的需求,例如確定機械臂的工作半徑,使用的環境,機械臂的負載等方面。

如果你是想要學習機械臂相關知識的話,就可以選擇一款目前市面上主流的機械臂從而開展學習。myPalletizer是以碼垛機械臂為原型設計的,主要用于實現貨物的碼垛和托盤裝卸工作;mechArm 是以主流的工業型機械臂為原型設計的,因為它的結構特殊在運行的時候可以保持機械臂的穩定;myCobot是以協作型機械臂為原型設計的,該結構是近年來熱門的機械臂,能夠與人類協同工作,可以提供人類的力量和精度。

以上就是本篇文章的全部內容了,未來,機械臂技術將繼續發展,為人類生產、工作、生活帶來更多的便利。如果你喜歡這篇文章請給我們留言點贊!

審核編輯黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 機器人
    +關注

    關注

    211

    文章

    28512

    瀏覽量

    207499
  • 人工智能
    +關注

    關注

    1792

    文章

    47425

    瀏覽量

    238955
  • 機械臂
    +關注

    關注

    12

    文章

    515

    瀏覽量

    24630
收藏 人收藏

    評論

    相關推薦

    嵌入式和人工智能究竟是什么關系?

    嵌入式和人工智能究竟是什么關系? 嵌入式系統是一種特殊的系統,它通常被嵌入到其他設備或機器中,以實現特定功能。嵌入式系統具有非常強的適應性和靈活性,能夠根據用戶需求進行定制化設計。它廣泛應用于各種
    發表于 11-14 16:39

    AI for Science:人工智能驅動科學創新》第6章人AI與能源科學讀后感

    幸得一好書,特此來分享。感謝平臺,感謝作者。受益匪淺。 在閱讀《AI for Science:人工智能驅動科學創新》的第6章后,我深刻感受到人工智能在能源科學領域中的巨大潛力和廣泛應用。這一章詳細
    發表于 10-14 09:27

    AI for Science:人工智能驅動科學創新》第4章-AI與生命科學讀后感

    很幸運社區給我一個閱讀此書的機會,感謝平臺。 《AI for Science:人工智能驅動科學創新》第4章關于AI與生命科學的部分,為我們揭示了人工智能技術在生命科學領域中的廣泛應用和
    發表于 10-14 09:21

    AI for Science:人工智能驅動科學創新》第二章AI for Science的技術支撐學習心得

    非常高興本周末收到一本新書,也非常感謝平臺提供閱讀機會。 這是一本挺好的書,包裝精美,內容詳實,干活滿滿。 關于《AI for Science:人工智能驅動科學創新》第二章“AI
    發表于 10-14 09:16

    AI for Science:人工智能驅動科學創新》第一章人工智能驅動的科學創新學習心得

    周末收到一本新書,非常高興,也非常感謝平臺提供閱讀機會。 這是一本挺好的書,包裝精美,內容詳實,干活滿滿。 《AI for Science:人工智能驅動科學創新》這本書的第一章,作為整個著作的開篇
    發表于 10-14 09:12

    risc-v在人工智能圖像處理應用前景分析

    、RISC-V在人工智能圖像處理中的應用案例 目前,已有多個案例展示了RISC-V在人工智能圖像處理中的應用潛力。例如: Esperanto技術公司 :該公司制造的首款高性能RISC-V AI處理器旨在
    發表于 09-28 11:00

    人工智能ai 數電 模電 模擬集成電路原理 電路分析

    人工智能ai 數電 模電 模擬集成電路原理 電路分析 想問下哪些比較容易學 不過好像都是要學的
    發表于 09-26 15:24

    人工智能ai4s試讀申請

    目前人工智能在繪畫對話等大模型領域應用廣闊,ai4s也是方興未艾。但是如何有效利用ai4s工具助力科研是個需要研究的課題,本書對ai4s基本原理和原則,方法進行描訴,有利于總結經驗,擬
    發表于 09-09 15:36

    名單公布!【書籍評測活動NO.44】AI for Science:人工智能驅動科學創新

    ! 《AI for Science:人工智能驅動科學創新》 這本書便將為讀者徐徐展開AI for Science的美麗圖景,與大家一起去了解: 人工智能究竟幫科學家做了什么?
    發表于 09-09 13:54

    報名開啟!深圳(國際)通用人工智能大會將啟幕,國內外大咖齊聚話AI

    8月28日至30日,2024深圳(國際)通用人工智能大會暨深圳(國際)通用人工智能產業博覽會將在深圳國際會展中心(寶安)舉辦。大會以“魅力AI·無限未來”為主題,致力于打造全球通用人工智能
    發表于 08-22 15:00

    FPGA在人工智能中的應用有哪些?

    FPGA(現場可編程門陣列)在人工智能領域的應用非常廣泛,主要體現在以下幾個方面: 一、深度學習加速 訓練和推理過程加速:FPGA可以用來加速深度學習的訓練和推理過程。由于其高并行性和低延遲特性
    發表于 07-29 17:05

    5G智能物聯網課程之Aidlux下人工智能開發(SC171開發套件V2)

    ://t.elecfans.com/v/27185.html *附件:語音對話機器人案例.pdf 人工智能 AI泛邊緣:智能安防實訓 31分38秒 https://t.elecfans.com/v/25509.html
    發表于 05-10 16:46

    5G智能物聯網課程之Aidlux下人工智能開發(SC171開發套件V1)

    機器人案例.pdf 人工智能 AI泛邊緣:智能安防實訓 31分38秒 https://t.elecfans.com/v/25509.html *附件:泛邊緣案例課.pdf 人工智能
    發表于 04-01 10:40

    人工智能AI芯片的概述

    人工智能AI)技術的快速發展已經成為當今科技領域的熱點話題。
    的頭像 發表于 02-29 09:10 ?5275次閱讀

    嵌入式人工智能的就業方向有哪些?

    。 國內外科技巨頭紛紛爭先入局,在微軟、谷歌、蘋果、臉書等積極布局人工智能的同時,國內的BAT、華為、小米等科技公司也相繼切入到嵌入式人工智能的賽道。那么嵌入式AI可就業的方向有哪些呢? 嵌入式
    發表于 02-26 10:17
    主站蜘蛛池模板: 国产成人午夜精品免费视频| 欧美大片免费观看| 日日干夜夜爽| 成人免费看片又大又黄| 肉动漫h黄动漫日本免费观看| 国产不卡在线观看视频| 亚洲欧美日韩在线观看一区二区三区 | 超大BBWWW| 无码区国产区在线播放| 经典WC女厕所里TV| 99精品AV无码一区二区| 特级毛片内射WWW无码| 久久久精品日本一区二区三区| gogogo在线观看| 亚洲电影成人 成人影院| 蜜桃人妻无码AV天堂三区| 疯狂第一次国语| 一个人免费视频在线观看 | 日本无码人妻丰满熟妇5G影院| 国产永久视频| xx在线观看| 伊人综合在线影院| 日韩视频中文字幕精品偷拍| 久久国产亚洲电影天堂| 国产成人无码区免费内射一片色欲 | 达达兔午夜一级毛片| 亚洲中文 字幕 国产 综合| 日本高清加勒比| 久久偷拍人| 国产亚洲精品高清视频免费| BL文高H强交| 伊人久久精品午夜| 无码日韩人妻精品久久蜜桃免费| 妹妹我要操| 黄色三级网址| 国产精品96久久久久久AV网址| 97精品视频| 一级淫片bbbxxx| 亚洲 日韩 欧美 另类 蜜桃| 日本人添下面的全过程| 美女扒开腿让男生桶爽免费APP|