《智能機器人技術應用》課件 項目五 小型柔性智能制造案例_第1頁
《智能機器人技術應用》課件 項目五 小型柔性智能制造案例_第2頁
《智能機器人技術應用》課件 項目五 小型柔性智能制造案例_第3頁
《智能機器人技術應用》課件 項目五 小型柔性智能制造案例_第4頁
《智能機器人技術應用》課件 項目五 小型柔性智能制造案例_第5頁
已閱讀5頁,還剩353頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

項目五小型柔性智能制造案例創(chuàng)靈實驗平臺項目引導介紹

首先,什么是自動分揀系統(tǒng)?

自動分揀系統(tǒng)(Automaticsortingsystem)是先進配送中心所必需的設施條件之一。具有很高的分揀效率,通常每小時可分揀商品6000-12000箱;可以說,自動分揀機是提高物流配送效率的一項關鍵因素。它是二次大戰(zhàn)后在美國、日本的物流中心中廣泛采用的一種自動分揀系統(tǒng),該系統(tǒng)已經成為發(fā)達國家大中型物流中心不可缺少的一部分。

自動分揀系統(tǒng)能連續(xù)、大批量地分揀貨物。由于采用大生產中使用的流水線自動作業(yè)方式,自動分揀系統(tǒng)不受氣候、時間、人的體力等的限制,可以連續(xù)運行。同時能保持極低的分揀誤差率,且分揀作業(yè)基本實現(xiàn)無人化。項目引導介紹工業(yè)生產中的自動分揀系統(tǒng):

自動分揀系統(tǒng)已廣泛應用于工業(yè)生產環(huán)境,如生產流水線上的打包、零配件生產線上的缺陷檢測、無菌產線分揀與包裝等。工業(yè)生產線上使用分揀系統(tǒng)不但可以釋放勞動力,同時可以在一些對環(huán)境要求比較高的生產線上完成需要分揀的工作。對于一些生產環(huán)境惡劣人無法靠近的生產線,更需求通過分揀機器人來完成分揀的工作。項目引導介紹基于計算機視覺的自動分揀系統(tǒng)

隨著計算機視覺技術的快速發(fā)展,基于計算機視覺的自動分揀系統(tǒng)已廣泛應用于工業(yè)生產中?;谟嬎銠C視覺的自動分揀系統(tǒng)通常包含三部分,第一部分是計算機視覺系統(tǒng),通常包含采集圖片的攝像頭與處理圖片的軟件部分組成;第二部分是控制系統(tǒng),通常是對計算機視覺已處理后的數(shù)據根據業(yè)務邏輯完成對分揀機械系統(tǒng)的控制,處理來自機械系統(tǒng)的反饋等控制指令的處理;第三部分是機械控制系統(tǒng),通常包含嵌入式與機械兩部分,嵌入式系統(tǒng)接收控制系統(tǒng)指令,并轉成對應的“機械指令”,驅動機械部分完成對應指令的動作。我們在生活中哪些地方有用到自動分揀系統(tǒng)?項目引導案例

在基于計算機視覺的分揀系統(tǒng)中,主要可以分兩類,一類是采用傳統(tǒng)的計算機視覺來對目標進行定位和判斷;另一類是基于神經網絡的人工智能模型進行目標定位與檢測。兩者都是計算機視覺,只是使用的技術有所不同,但后者在精度與靈活性上要比傳統(tǒng)的計算機視覺要好,也會逐漸成為未來的方向。傳統(tǒng)計算機視覺的目標檢測:項目引導案例

傳統(tǒng)目標檢測通常是針對不同的任務,設計不同的特征提取算法,然后對圖像分塊,每一塊使用之前設計的算法提取特征并分類得到該塊的類別,分塊又有各種的算法,如滑窗法、selectedsearch、聚類等。如下圖為滑窗算法目標檢測。(可參照Jupyter項目五的任務一中的第三點的動圖)基于神經網絡的深度學習的目標檢測項目引導案例

深度學習用于目標檢測的算法從思路上來看,可以分為兩大類,一類是twostage的方法,也就是把整個分為兩部分,生成候選框和識別框內物體,如:R-CNN、FastR-CNN、FasterR-CNN、Mask-RCNN;另一類是onestage的方法,把整個流程統(tǒng)一在一起,直接給出檢測結果,主要包含SSD,YOLO系列。如圖:基于神經網絡的深度學習的目標檢測項目引導案例

深度學習用于目標檢測的算法從思路上來看,可以分為兩大類,一類是twostage的方法,也就是把整個分為兩部分,生成候選框和識別框內物體,如:R-CNN、FastR-CNN、FasterR-CNN、Mask-RCNN;另一類是onestage的方法,把整個流程統(tǒng)一在一起,直接給出檢測結果,主要包含SSD,YOLO系列。如圖:軟件設計任務一職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務一軟件設計了解工業(yè)自動分揀系統(tǒng)需求;學習工業(yè)生產中的自動分揀系統(tǒng)介紹;掌握工業(yè)生產制造自動分揀系統(tǒng)功能模塊分析;根據工業(yè)生產制造自動分揀系統(tǒng)需求進行分析;掌握工業(yè)生產制造自動分揀系統(tǒng)功能模塊詳細設計,對模塊進行詳細設計分析。了解工業(yè)自動分揀系統(tǒng)需求;掌握工業(yè)生產制造自動分揀系統(tǒng)功能模塊分析;掌握工業(yè)生產制造自動分揀系統(tǒng)功能模塊詳細設計。職業(yè)能力目標01實驗目的實驗內容職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務一軟件設計此任務要求同學們了解工業(yè)自動分揀系統(tǒng)需求,學習工業(yè)生產中的自動分揀系統(tǒng)介紹;掌握工業(yè)生產制造自動分揀系統(tǒng)功能模塊分析,并能夠根據工業(yè)生產制造自動分揀系統(tǒng)需求進行分析;掌握工業(yè)生產制造自動分揀系統(tǒng)功能模塊詳細設計,對模塊進行詳細設計分析。任務描述任務要求了解工業(yè)自動分揀系統(tǒng)需求,完成功能模塊構建;分析工業(yè)生產制造自動分揀系統(tǒng)功能模塊要怎樣去設計完成相應模塊,列出相關流程圖;列舉出工業(yè)生產制造自動分揀系統(tǒng)功能模塊詳細設計。任務描述與要求02職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務一軟件設計任務分析思考一下在未來,,在我們學習了解完本章知識后,我們能否根據所學知識對工業(yè)中的自動分揀系統(tǒng)進行改良?根據自己的了解,要怎樣去了解認識工業(yè)中的自動分揀系統(tǒng),可以促進自己進一步地學習?任務分析與計劃03任務計劃表項目名稱創(chuàng)靈實驗平臺任務名稱軟件設計計劃方式自主設計計劃要求請用6個計劃步驟來完整描述出如何完成本次任務序號任務計劃1

2

3

4

5

6

通過上面的思考,你是否對本任務要完成的工作有所了解?讓我們一起來制訂完成本次任務的實施計劃吧!任務分析與計劃03職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務一軟件設計需求分析204知識儲備系統(tǒng)功能模塊1自動分揀系統(tǒng)總體流程(示例):04功能摘要:041.設置功能模塊對應的主要功能點:功能摘要:042.設置各個功能模塊的優(yōu)先級:05知識儲備需求分析2系統(tǒng)功能模塊13需求分析04

需求分析也稱為軟件需求分析、系統(tǒng)需求分析或需求分析工程等,是開發(fā)人員經過深入細致的調研和分析,準確理解用戶和項目的功能、性能、可靠性等具體要求,將用戶非形式的需求表述轉化為完整的需求定義,從而確定系統(tǒng)必須做什么的過程。目標04需求分析

需求分析是軟件計劃階段的重要活動,也是軟件生存周期中的一個重要環(huán)節(jié),該階段是分析系統(tǒng)在功能上需要“實現(xiàn)什么”,而不是考慮如何去“實現(xiàn)”。需求分析的目標是把用戶對待開發(fā)軟件提出的“要求”或“需要”進行分析與整理,確認后形成描述完整、清晰與規(guī)范的文檔,確定軟件需要實現(xiàn)哪些功能,完成哪些工作。此外,軟件的一些非功能性需求(如軟件性能、可靠性、響應時間、可擴展性等),軟件設計的約束條件,運行時與其他軟件的關系等也是軟件需求分析的目標。原則04需求分析

為了促進軟件研發(fā)工作的規(guī)范化、科學化,軟件領域提出了許多軟件開發(fā)與說明的方法,如結構化方法、原型化法、面向對象方法等。這些方法有的很相似。在實際需求分析工作中.每一種需求分析方法都有獨特的思路和表示法,基本都適用下面的需求分析的基本原則。(1)側重表達理解問題的數(shù)據域和功能域。對新系統(tǒng)程序處理的數(shù)據,其數(shù)據域包括數(shù)據流、數(shù)據內容和數(shù)據結構。而功能域則反映它們關系的控制處理信息。原則04需求分析

為了促進軟件研發(fā)工作的規(guī)范化、科學化,軟件領域提出了許多軟件開發(fā)與說明的方法,如結構化方法、原型化法、面向對象方法等。這些方法有的很相似。在實際需求分析工作中.每一種需求分析方法都有獨特的思路和表示法,基本都適用下面的需求分析的基本原則。(2)需求問題應分解細化,建立問題層次結構??蓪碗s問題按具體功能、性能等分解并逐層細化、逐一分析。原則04需求分析

為了促進軟件研發(fā)工作的規(guī)范化、科學化,軟件領域提出了許多軟件開發(fā)與說明的方法,如結構化方法、原型化法、面向對象方法等。這些方法有的很相似。在實際需求分析工作中.每一種需求分析方法都有獨特的思路和表示法,基本都適用下面的需求分析的基本原則。(3)建立分析模型。模型包括各種圖表,是對研究對象特征的一種重要表達形式。通過邏輯視圖可給出目標功能和信息處理間關系,而非實現(xiàn)細節(jié)。由系統(tǒng)運行及處理環(huán)境確定物理視圖,通過它確定處理功能和數(shù)據結構的實際表現(xiàn)形式。內容04需求分析

需求分析的內容是針對待開發(fā)軟件提供完整、清晰、具體的要求,確定軟件必須實現(xiàn)哪些任務。具體分為功能性需求、非功能性需求與設計約束三個方面。1.功能性需求

功能性需求即軟件必須完成哪些事,必須實現(xiàn)哪些功能,以及為了向其用戶提供有用的功能所需執(zhí)行的動作。功能性需求是軟件需求的主體。開發(fā)人員需要親自與用戶進行交流,核實用戶需求,從軟件幫助用戶完成事務的角度上充分描述外部行為,形成軟件需求規(guī)格說明書。內容04需求分析2.非功能性需求

作為對功能性需求的補充,軟件需求分析的內容中還應該包括一些非功能需求。主要包括軟件使用時對性能方面的要求、運行環(huán)境要求。軟件設計必須遵循的相關標準、規(guī)范、用戶界面設計的具體細節(jié)、未來可能的擴充方案等。3.設計約束

一般也稱做設計限制條件,通常是對一些設計或實現(xiàn)方案的約束說明。例如,要求待開發(fā)軟件必須使用Oracle數(shù)據庫系統(tǒng)完成數(shù)據管理功能,運行時必須基于Linux環(huán)境等。過程04需求分析

需求分析階段的工作,可以分為四個方面:問題識別、分析與綜合、制訂規(guī)格說明、評審。

問題識別:就是從系統(tǒng)角度來理解軟件,確定對所開發(fā)系統(tǒng)的綜合要求,并提出這些需求的實現(xiàn)條件,以及需求應該達到的標準。這些需求包括:功能需求(做什么)、性能需求(要達到什么指標)、環(huán)境需求(如機型、操作系統(tǒng)等)、可靠性需求(不發(fā)生故障的概率)、安全保密需求、用戶界面需求、資源使用需求(軟件運行是所需的內存、CPU等)、軟件成本消耗與開發(fā)進度需求、預先估計以后系統(tǒng)可能達到的目標。過程04需求分析

分析與綜合:逐步細化所有的軟件功能,找出系統(tǒng)各元素間的聯(lián)系,接口特性和設計上的限制,分析他們是否滿足需求,剔除不合理部分,增加需要部分。最后綜合成系統(tǒng)的解決方案,給出要開發(fā)的系統(tǒng)的詳細邏輯模型(做什么的模型)。

制訂規(guī)格說明書:即編制文檔,描述需求的文檔稱為軟件需求規(guī)格說明書。請注意,需求分析階段的成果是需求規(guī)格說明書,向下一階段提交。

評審:對功能的正確性,完整性和清晰性,以及其它需求給予評價。評審通過才可進行下一階段的工作,否則重新進行需求分析。方法04需求分析

目前,軟件需求的分析與設計方法較多,一些大同小異,而有的則基本思路相差很大。從開發(fā)過程及特點出發(fā),軟件開發(fā)一般采用軟件生存周期的開發(fā)方法,有時采用開發(fā)原型以幫助了解用戶需求。在軟件分析與設計時,自上而下由全局出發(fā)全面規(guī)劃分析,然后逐步設計實現(xiàn)。從系統(tǒng)分析出發(fā),可將需求分析方法大致分為功能分解方法、結構化分析方法、信息建模法和面向對象的分析方法。(1)功能分解方法。(2)結構化分析方法。(3)信息建模方法。(4)面向對象的分析方法。職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務一軟件設計05任務實施模塊詳細設計分析2認識分揀系統(tǒng)組成11.倉庫搬運:認識分揀系統(tǒng)組成05在工業(yè)自動分揀系統(tǒng)中首先需要做的事是將物料從倉庫搬運到運輸?shù)呢浳锏膫魉蛶?,這部分的工作屬于重復性的工作,機械臂需要重復將物料從指定的地方搬運到另一個地方,如圖所示:這部分在軟件設計上,可以將其定位在一個固定的模塊,由該模塊負責這樣的工作。本次的小柔智能制造中,我們將通過編寫一個獨立的倉庫搬運模塊,負責在“倉庫”中將物料(色塊)搬運到傳送帶上,同時記錄搬運的數(shù)據,一遍通過遍歷的方法將“倉庫”上的所有物料搬運到傳送帶。2.傳輸:認識分揀系統(tǒng)組成05

傳送帶,是物料運輸和自動化生產最為重要的一環(huán),工業(yè)生產制造自動分揀系統(tǒng)中傳送帶是物料從一個生產環(huán)節(jié)搬運到另一個生產環(huán)節(jié)的重要工具。在小柔智能制造中,針對傳送帶部分需要單獨設計一個模塊,來負責控制傳送帶的功能,對傳送帶正向運行與停止進行控制,對傳送帶方向運行進行控制等。3.物品識別:認識分揀系統(tǒng)組成05

工業(yè)生產制造自動分揀系統(tǒng)需要對運輸過來的物料進行識別定位,這是分揀的基礎,只有通過識別系統(tǒng)的識別之后給出對應的數(shù)據如:類別、位置坐標,才能做下一步的分揀工作。4.物品分揀:認識分揀系統(tǒng)組成05

在工業(yè)自動分揀系統(tǒng)中,物料經過識別后則根據設定的要求,就可以使用機器人去執(zhí)行具體的分揀工作,機械臂需要到指定的目標位置將物料抓起,然后將其放置在對應的位置上。

小柔智能制造項目中,需要設計一個模塊該模塊功能是根據識別的結果進行目標物體(色塊)抓取與放置。5.參數(shù)設置功能:認識分揀系統(tǒng)組成05

分揀系統(tǒng)可能運行在不同的環(huán)境下,也可能維護人員需要對系統(tǒng)進行維護,所以,需要有一個可視化的參數(shù)設置功能,該功能將系統(tǒng)中的參數(shù)通過可視化的方式進行系統(tǒng)的參數(shù)設置。05任務實施21認識分揀系統(tǒng)組成模塊詳細設計分析1.倉庫搬運:模塊詳細設計分析05功能描述:

1.啟動系統(tǒng)后,機械臂根據給定的坐標位置從“倉庫”抓取物品,抓取后將物品放置在傳送帶上的位置,放置傳送帶位置固定;

2.倉庫設定有3個倉位,并為固定,機械臂按順序從1號到3號倉位抓取物品,每次抓取物品后將抓取的位置下來,防止重復抓取沒有物品可以抓取;

3.機械臂按順序抓取3個倉位上所有的物品,抓完即停止;

4.機械臂在運行期間用戶按下暫停鍵,機械臂暫停動作,但會記錄前面執(zhí)行過的記錄,再次啟動后繼續(xù)之前的未完成的操作,如:機械臂在抓取2號倉位物品時,用戶按下暫停,則機械臂會將已抓取的2號倉位物品放置在傳送帶上,暫停對3號倉位物品的抓取,用戶按下開始,機械臂將繼續(xù)將3號倉位的物品抓取放置在傳送帶上,完成指定的動作;

1.倉庫搬運:模塊詳細設計分析05功能描述:

5.機械臂在執(zhí)行動作期間,用戶按下停止鍵,則系統(tǒng)將不記錄機械臂之前的動作,從頭開始執(zhí)行動作,如:機械臂在抓取2號倉位時,用戶按下停止鍵,機械臂將2號倉位物品放置傳送帶后,歸為,當用戶再次按開始鍵時,機械臂將重新執(zhí)行動作,從1號倉位開始按順序抓取物品。2.產品傳送:模塊詳細設計分析05功能描述:

1.機械臂將物品搬運到傳送帶上后,傳送帶開始運輸物品,物品進入視覺區(qū)域后,傳送帶停止運動;

2.機械臂搬運物品到傳送帶上時用戶按暫停鍵,傳送帶暫停運動,當按重新按開始時,傳送帶繼續(xù)運動;

3.機械臂搬運物品到傳送帶上時用戶按停止鍵,傳送帶將運動一段距離,然后停止運動。3.產品識別:模塊詳細設計分析05功能描述:

1.根據圖像識別傳送帶上物品的類別并定位物品的位置;

2.輸出結構化的分揀數(shù)據。4.產品分揀:模塊詳細設計分析05功能描述:

1.根據圖像識別的位置機械臂到指定位置抓取物品;

2.根據圖像識別的物品類型將物品放置到設定好的類別位置,機械臂復位;

3.在機械臂抓取物品時用戶按暫停按鈕,機械臂將暫停動作,用戶按開始按鍵時,機械臂將繼續(xù)原先的動作;

4.在機械臂抓取物品時用戶按停止按鈕,機械臂將停止動作,用戶按開始時,系統(tǒng)將重新開始運行。5.坐標校準:模塊詳細設計分析05功能描述:

1.當用戶按坐標校準按鈕時,根據設定的坐標生成三個定位點,即用紅色點在坐標校準時圖像上標出;

2.將圖像坐標轉換成機械臂的坐標。6.網絡設置:模塊詳細設計分析05功能描述:

1.對設備的以太網絡進行設置,用戶可以設置自動獲取IP與手動設置IP,用戶可以設置設備IP、網關、與DNS,點確定按鈕后,生效;

2.對設備的WIFI網絡進行設置,用戶可以設置自動獲取IP與手動設置IP,用戶可以設置設備IP、網關、與DNS,點確定按鈕后,生效。7.參數(shù)設置:模塊詳細設計分析05功能描述:

1.可對倉位的坐標進行設置;

2.可對物品放置傳送帶上的位置進行設置;

3.可對分揀機械臂,分揀物品放置的位置坐標進行設置;

4.軟件方式調整機械臂位置。職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務一軟件設計任務檢查與評價06序號評價內容評價標準分值得分1知識運用(20%)掌握相關理論知識,理解本次任務要求,制定詳細計劃,計劃條理清晰,邏輯正確(20分)20分

理解相關理論知識,能根據本次任務要求、制定合理計劃(15分)了解相關理論知識,有制定計劃(10分)無制定計劃(0分)2專業(yè)技能(40%)舉例生活中的自動分揀系統(tǒng),認識分揀系統(tǒng)組成,掌握系統(tǒng)各模塊的實現(xiàn)方法。(40分)40分

舉例生活中的自動分揀系統(tǒng),認識分揀系統(tǒng)組成。(25分)舉例生活中的自動分揀系統(tǒng)。(15分)沒有完成離線ASR語音實驗。(0分)3核心素養(yǎng)(20%)具有良好的自主學習能力、分析解決問題的能力、整個任務過程中有指導他人(20分)20分

具有較好的學習能力和分析解決問題的能力,任務過程中無指導他人(15分)能夠主動學習并收集信息,有請教他人進行解決問題的能力(10分)不主動學習(0分)4課堂紀律(20%)設備無損壞、設備擺放整齊、工位區(qū)域內保持整潔、無干擾課堂秩序(20分)20分

設備無損壞、無干擾課堂秩序(15分)無干擾課堂秩序(10分)干擾課堂秩序(0分)總得分1、請參照評價標準完成自評和對其他小組的互評。2、各組請代表分析本組任務實施經驗。職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務一軟件設計任務小結07

在大家學習完本任務后,是否還有許多為解決的問題?那么接下來我們來進行任務小結,通過流程圖了解本章學習了什么,對相應知識進行鞏固復習。職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務一軟件設計任務拓展08自動分揀系統(tǒng)在生活中還有什么具體案例嗎,請列舉出相應的例子。小柔性能制造的流程是怎樣的,它由哪些模塊構成,請詳細寫出,并思考如何將這些模塊結合起來并應用。1認識分揀系統(tǒng)組成;1.學習流程圖;2.閱讀各模塊功能描述。解題

思路提示任務要求2掌握系統(tǒng)各模塊的實現(xiàn)方法。謝謝大家學習項目五小型柔性智能制造案例創(chuàng)靈實驗平臺GUI界面開發(fā)與IDE使用任務二職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務二

GUI界面開發(fā)與IDE使用掌握UI布局設計;了解并學習小柔智能制造UI界面設計;掌握PyCharmIDE基本使用,并學習使用PyCharm開發(fā)項目;了解QtDesigner,在PyCharm上安裝QtDesigner;掌握并能夠使用QtDesigner設計PyQt5界面。了解工業(yè)自動分揀系統(tǒng)需求;掌握工業(yè)生產制造自動分揀系統(tǒng)功能模塊分析;掌握工業(yè)生產制造自動分揀系統(tǒng)功能模塊詳細設計。職業(yè)能力目標01實驗目的實驗內容職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務二

GUI界面開發(fā)與IDE使用要求同學們掌握UI布局設計,了解并學習小柔智能制造UI界面設計;掌握PyCharmIDE基本使用,并學習使用PyCharm開發(fā)項目;了解QtDesigner,在PyCharm上安裝QtDesigner;掌握并能夠使用QtDesigner設計PyQt5界面。任務描述任務要求了解工業(yè)自動分揀系統(tǒng)需求,設計對應的需求分析;安裝PycharmIDE,完成基礎實驗;在Pycharm上安裝QtDesigner、PyUIC;掌握工業(yè)生產制造自動分揀系統(tǒng)功能模塊詳細設計。任務描述與要求02職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務二

GUI界面開發(fā)與IDE使用任務分析思考一下在未來,在我們學習了解完本章知識后,我們可以如何對GUI界面的視覺效果進行優(yōu)化?根據自己的了解,要怎樣去了解認識GUI與IDE,可以促進自己進一步地學習?任務分析與計劃03任務計劃表項目名稱創(chuàng)靈實驗平臺任務名稱GUI界面開發(fā)與IDE使用計劃方式自主設計計劃要求請用6個計劃步驟來完整描述出如何完成本次任務序號任務計劃1

2

3

4

5

6

通過上面的思考,你是否對本任務要完成的工作有所了解?讓我們一起來制訂完成本次任務的實施計劃吧!任務分析與計劃03職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務二

GUI界面開發(fā)與IDE使用PyCharmIDE基本使用204知識儲備配置界面設置1配置界面設置04通過前面的軟件設計部分的任務,我們知道,小柔智能制造項目中有一個很重要的功能是參數(shù)配置,這些參數(shù)在對機器的安裝調試以及出現(xiàn)故障進行調試定位來說非常關鍵,那么,這部分界面都包含哪些部分呢?配置界面設置041.坐標校準:小柔智能制造中使用的是通過計算機視覺進行物體的識別與定位,那么就需要將圖像中的位置轉換成現(xiàn)實世界的真實位置,在轉換過程中我們需要通過固定一個圖像與真實的世界的相對位置,通過這個固定的位置,就可以實現(xiàn)在固定參數(shù)下的的坐標值轉換,這部分在后面的“機械臂控制模塊與傳送帶”任務部分,我們會詳細介紹,這部分轉換是如何實現(xiàn)。配置界面設置04

在參數(shù)設置中我們需要這樣的一個功能,將攝像頭固定到指定位置上,我們把它稱為“坐標校準”,那么在界面設置上,我們該如何設計呢?首先,如果我們要知道坐標校準的過程,通過上面的簡單介紹,我們知道,坐標校準的過程實際上是調整攝像頭的位置,使其到達一個指定位置,實際校準過程是在圖像中我們指定了3個點,這3點要與實際位置上3點重合,即可確定攝像的位置到達正確位置。所以,坐標校準過程中需要有視頻顯示,來實時顯示攝像頭是否調整到位。通過上面的分析,我們知道,在這部分界面上需要有一個顯示視頻的地方。最終設計的效果如下圖:配置界面設置04配置界面設置042.網絡設置:在設備出現(xiàn)故障時候,維護人員需要通過ssh協(xié)議登錄到系統(tǒng)上進行維護,那么就需要對設備的網絡地址進行配置,這樣就需要有能進行網絡配置的界面。根據網絡類型,配置的網絡類型有以太網絡、wifi網絡,而配置的內容,則是網絡配置中的基本參數(shù),最終的設計效果如下:配置界面設置043.參數(shù)設置:對于一些是固定位置,機械臂需要按固定位置進行抓取與放置的操作來說,這里的坐標位置可以將其設置成可調整參數(shù),這樣就可以根據不同的環(huán)境可能位置上會稍微有些差別,就不需要修改代碼來完成,直接通過修改界面上的參數(shù)即可完成。另一方面,小柔智能制造中用到兩個機械,那么位置放錯是否還需要重新放,我們可以設置一個在軟件上進行機械臂的位置置換的方法,而這部分也可以放置在參數(shù)設置上。通過上述分析,最終的設計效果如下:05任務實施PyCharmIDE基本使用2配置界面設置1304什么是PyCharmIDE?

在介紹PyCharm之前,我們首先來看下什么是IDE,IDE全稱IntegratedDevelopmentEnvironment,即集成開發(fā)環(huán)境,是為開發(fā)者而設計的開發(fā)工具,使用IDE工具可以很方便進行開發(fā)代碼調試,在工具里可以以插件的形式集成各種開發(fā)工具。PyCharm是由JetBrains打造的一款PythonIDE,適合Python開發(fā)人群,進行Python軟件開發(fā)與代碼調試。04window10安裝PyCharm步驟一:下載安裝包:官網:/pycharm/下載網址:/pycharm/download/#section=windows04window10安裝PyCharm步驟二:安裝軟件雙擊下載的安裝包,選擇模塊工具,完成安裝。職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務二

GUI界面開發(fā)與IDE使用05任務實施QtDesigner設計GUI界面2使用PyCharm開發(fā)項目1GUI界面控制機械臂功能實現(xiàn)3使用PyCharm開發(fā)項目1.創(chuàng)建工程:步驟一:打開PyCharm點擊菜單鍵File,菜單選擇NewProject。使用PyCharm開發(fā)項目1.創(chuàng)建工程:步驟二:選擇PurePython然后根據實際情況選擇工程項目路徑,配置環(huán)境,如下圖:使用PyCharm開發(fā)項目1.創(chuàng)建工程:步驟三:點擊create創(chuàng)建項目。使用PyCharm開發(fā)項目2.編寫代碼:步驟四:選擇工程項目,鼠標右鍵,選擇New選擇PythonFile。使用PyCharm開發(fā)項目2.編寫代碼:步驟五:編寫Python代碼。使用PyCharm開發(fā)項目動手實驗:根據上面教程在PC上安裝PyCharm,使用PyCharm創(chuàng)建一個名為robot的工程目錄,并在工程下面創(chuàng)建一個app.py并創(chuàng)建一個start函數(shù),函數(shù)功能是打印“HelloRobot”。若無法自行成功安裝QtDesigner+PyUIC,可以仿照10.QtDesigner設計GUI界面下述步驟使用我們提供的環(huán)境進行安裝學習。05任務實施213使用PyCharm開發(fā)項目QtDesigner設計GUI界面GUI界面控制機械臂功能實現(xiàn)QtDesigner設計GUI界面1.QtDesigner:在PyQt中編寫UI界面可以直接通過代碼來實現(xiàn),也可以通過QtDesigner來完成。QtDesigner的設計符合MVC的架構,其實現(xiàn)了視圖和邏輯的分離,從而實現(xiàn)了開發(fā)的便捷。QtDesigner中的操作方式十分靈活,其通過拖拽的方式放置控件可以隨時查看控件效果。QtDesigner生成的.ui文件(實質上是XML格式的文件)也可以通過pyuic5工具轉換成.py文件。QtDesigner隨PyQt5-tools包一起安裝(安裝方法pipinstall-i/simplepyqt5-tools),其安裝路徑在“Python安裝路徑\Lib\site-packages\qt5_applications\Qt\bin”下。QtDesigner設計GUI界面2.PyCharm安裝配置QtDesigner:正常QtDesigner包含在PyQt5-tools中,如果沒有就通過pipinstall-i/simplepyqt5-tools進行安裝,但是我們這里使用PyCharm集成開發(fā)環(huán)境,所以直接通過PyCharm安裝,打開PyCharm,安裝方法如下圖:步驟一:選中CreateNewProject,創(chuàng)建新項目。QtDesigner設計GUI界面2.PyCharm安裝配置QtDesigner:步驟二:選中菜單(點擊File,選中設置setting)。QtDesigner設計GUI界面2.PyCharm安裝配置QtDesigner:步驟三:選中ProjectInterpreter,并點擊右側“加號”,下載對應安裝包。QtDesigner設計GUI界面2.PyCharm安裝配置QtDesigner:步驟四:修改pycharm下載源/simple/安裝對應安裝包: 修改python下載源Url:QtDesigner設計GUI界面2.PyCharm安裝配置QtDesigner:步驟五:修改完成點擊ok按鈕。QtDesigner設計GUI界面2.PyCharm安裝配置QtDesigner:步驟六:點擊刷新按鈕更新下載源。QtDesigner設計GUI界面2.PyCharm安裝配置QtDesigner:步驟七:下載一個pyqt5,若版本不同的,可以通過勾選Specifyversion,來進行版本選擇。QtDesigner設計GUI界面2.PyCharm安裝配置QtDesigner:步驟八:下載一個pyqt5-tools工具包。QtDesigner設計GUI界面2.PyCharm安裝配置QtDesigner:步驟九:再下載一個pyuic5-tools工具包。QtDesigner設計GUI界面2.PyCharm安裝配置QtDesigner:步驟十:開始工具配置,添加所需工具。QtDesigner設計GUI界面2.PyCharm安裝配置QtDesigner:步驟十一:找到PyQt5-Tool安裝包路徑,如下圖:QtDesigner設計GUI界面2.PyCharm安裝配置QtDesigner:步驟十二:在Program欄選擇designer.exe。在Workingdirectory欄填入$ProjectFileDir$。QtDesigner設計GUI界面2.PyCharm安裝配置QtDesigner:步驟十三:在Python包安裝目錄找到pyuic.exe文件所在目錄,如下圖:QtDesigner設計GUI界面2.PyCharm安裝配置QtDesigner:步驟十四:填入Program,在Arguments處填入$FileName$-o$FileNameWithoutExtension$.py,Workingdirectory填入`$ProjectFileDir$`即可:QtDesigner設計GUI界面2.PyCharm安裝配置QtDesigner:步驟十五:填入$ProjectFileDir$。QtDesigner設計GUI界面2.PyCharm安裝配置QtDesigner:動手實驗:根據上面教程在PyCharm上安裝QtDesigner+PyUIC。QtDesigner設計GUI界面3.使用QtDesigner設計Qt界面:步驟一:下載UI資源包,后面設計界面樣式將會用到。步驟二:1).打開QtDesigner創(chuàng)建一個主窗口。QtDesigner設計GUI界面3.使用QtDesigner設計Qt界面:2).打開WidgetBox工具欄,在工具欄上點擊“視圖”將“WidgetBox”勾選上。QtDesigner設計GUI界面3.使用QtDesigner設計Qt界面:步驟三:給主窗口頁面添加背景圖片。操作方法:1).打開屬性編輯器,2).選擇主窗口,在屬性編輯器找到“styleSheet”,如圖。QtDesigner設計GUI界面3.使用QtDesigner設計Qt界面:步驟三:給主窗口頁面添加背景圖片。操作方法:1).打開屬性編輯器,2).選擇主窗口,在屬性編輯器找到“styleSheet”,如圖。QtDesigner設計GUI界面3.使用QtDesigner設計Qt界面:3).打開“styleSheet”導入下載的UI資源包中的color.qrc文件。添加qrc資源文件: 導入qrc文件:QtDesigner設計GUI界面3.使用QtDesigner設計Qt界面:導入color.qrc:

完成:QtDesigner設計GUI界面3.使用QtDesigner設計Qt界面:4).給主窗口添加背景圖片。QtDesigner設計GUI界面3.使用QtDesigner設計Qt界面:1.點擊OK: 2.為了讓背景圖只作用于主窗口,將樣式修改如右圖圖所示: QtDesigner設計GUI界面3.使用QtDesigner設計Qt界面:創(chuàng)靈實驗平臺顯示界面:注意,添加背景后可能窗口的尺寸與背景圖片尺寸不一致,此時可以通過拖拽右下方將主窗口拖拽到與背景圖片一致的尺寸!QtDesigner設計GUI界面3.使用QtDesigner設計Qt界面:步驟四:1).添加開始按鈕、停止按鈕、坐標校準與設置按鈕:QtDesigner設計GUI界面3.使用QtDesigner設計Qt界面:1.雙擊設置按鈕: 2.選擇所需按鈕:QtDesigner設計GUI界面3.使用QtDesigner設計Qt界面:2).雙擊按鈕,去掉上面的PushButton字體。QtDesigner設計GUI界面3.使用QtDesigner設計Qt界面:3).其他按鈕以此類推。QtDesigner設計GUI界面3.使用QtDesigner設計Qt界面:步驟五:1).添加視頻顯示容器與日志輸出容器;2).選擇label控件,放置在主窗口的視頻顯示位置。QtDesigner設計GUI界面3.使用QtDesigner設計Qt界面:將視頻界面放在顯示位置:QtDesigner設計GUI界面3.使用QtDesigner設計Qt界面:3).選擇textBrowser控件,放置在主窗口的日志顯示位置。QtDesigner設計GUI界面3.使用QtDesigner設計Qt界面:放置成功后選擇StyleSheet:QtDesigner設計GUI界面3.使用QtDesigner設計Qt界面:4).將textBrowser控件的背景樣式,修改為如下圖所示:QtDesigner設計GUI界面3.使用QtDesigner設計Qt界面:步驟六:導出.ui文件。QtDesigner設計GUI界面3.使用QtDesigner設計Qt界面:步驟七:.ui文件轉.py1).PyQt5安裝成功后,pyuic5也會默認隨著安裝,可以嘗試在cmd命令窗口輸入pyuic5-h查看命令是否可以正常使用。QtDesigner設計GUI界面3.使用QtDesigner設計Qt界面:2).如果在cmd窗口下找不到該命令,則有可能是環(huán)境變量沒正確引入,找到Python安裝目錄的Scripts下看是否有pyuic5.exe,如果有,說明包是正常安裝,則只需要將Python安裝目錄的Scripts添加到環(huán)境變量中,如:D:\app\python3.6\Scripts。3).在上面保存的ColorBlock.ui文件所在目錄下,打開cmd或PowerShell,然后執(zhí)行命令,命令行如下:QtDesigner設計GUI界面3.使用QtDesigner設計Qt界面:4).執(zhí)行完后,可以看到在ui文件所在的目錄下生成了【ColorBlock.py】文件。QtDesigner設計GUI界面3.使用QtDesigner設計Qt界面:5).也可以使用PyCharm上安裝的PyUIC進行轉換,如下圖方式:QtDesigner設計GUI界面3.使用QtDesigner設計Qt界面:動手實驗:根據上面教程在PC上根據UI設計,完成小柔智能制造操作界面的主界面Qt設計,并生成.ui和對應的.py文件。05任務實施213使用PyCharm開發(fā)項目QtDesigner設計GUI界面GUI界面控制機械臂功能實現(xiàn)GUI界面控制機械臂功能實現(xiàn)步驟一:1).將資源文件color.qrc轉成.py文件:GUI界面控制機械臂功能實現(xiàn)2).選擇在此處打開PowerShell,執(zhí)行命令【pyrcc5-ocolor_rc.pycolor.qrc】生成【color_rc.py】文件,如下圖所示:GUI界面控制機械臂功能實現(xiàn)步驟二:編寫邏輯代碼1).UI代碼說明:使用PyCharm打開前面設計后轉成.py的UI文件【ColorBlock.py】文件使用PyCharm在同級目錄下,創(chuàng)建文件名為【app.py】的文件,如下圖所示:GUI界面控制機械臂功能實現(xiàn)2).鍵入如下代碼:(此處請參照Jupyter中)GUI界面控制機械臂功能實現(xiàn)3).點擊運行。GUI界面控制機械臂功能實現(xiàn)4).點擊GUI界面的開始按鈕:GUI界面控制機械臂功能實現(xiàn)5).PyCharm控制窗口輸出上面定義函數(shù)的內容。職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務二

GUI界面開發(fā)與IDE使用任務檢查與評價06序號評價內容評價標準分值得分1知識運用(20%)掌握相關理論知識,理解本次任務要求,制定詳細計劃,計劃條理清晰,邏輯正確(20分)20分

理解相關理論知識,能根據本次任務要求、制定合理計劃(15分)了解相關理論知識,有制定計劃(10分)無制定計劃(0分)2專業(yè)技能(40%)Pycharm成功創(chuàng)建工程,學會用QtDesigner設計GUI界面,用GUI界面實現(xiàn)控制機械臂功能。(40分)40分

Pycharm成功創(chuàng)建工程,學會用QtDesigner設計GUI界面。(25分)Pycharm成功創(chuàng)建工程。(15分)沒有完成離線ASR語音實驗。(0分)3核心素養(yǎng)(20%)具有良好的自主學習能力、分析解決問題的能力、整個任務過程中有指導他人(20分)20分

具有較好的學習能力和分析解決問題的能力,任務過程中無指導他人(15分)能夠主動學習并收集信息,有請教他人進行解決問題的能力(10分)不主動學習(0分)4課堂紀律(20%)設備無損壞、設備擺放整齊、工位區(qū)域內保持整潔、無干擾課堂秩序(20分)20分

設備無損壞、無干擾課堂秩序(15分)無干擾課堂秩序(10分)干擾課堂秩序(0分)總得分1、請參照評價標準完成自評和對其他小組的互評。2、各組請代表分析本組任務實施經驗。職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務二

GUI界面開發(fā)與IDE使用任務小結07

在大家學習完本任務后,是否還有許多為解決的問題?那么接下來我們來進行任務小結,通過流程圖了解本章學習了什么,對相應知識進行鞏固復習。職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務二

GUI界面開發(fā)與IDE使用任務拓展08請根據所學內容,設計創(chuàng)靈實驗平臺案例演示界面。在本項任務中,我們學習了GUI界面設計,那么我們能否自定義設計一個界面呢?并設計相應的按鍵。我們能將GUI設計應用于生活中的哪些方面呢?1使用PyCharm開發(fā)項目;1.Pycharm使用指導;2.QtDesigner原理。解題

思路提示任務要求2QtDesigner設計GUI界面并實現(xiàn)控制機械臂功能。謝謝大家學習項目五小型柔性智能制造案例創(chuàng)靈實驗平臺機械臂控制模塊與傳送帶開發(fā)任務三職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務三機械臂控制模塊與傳送帶開發(fā)復習并掌握第一張人工智能實驗平臺機械臂部分;復習并掌握第二章傳送帶部分的知識內容,并能熟練運用;掌握串口調用機械臂方法;掌握機械臂控制Python封裝方法;掌握傳送帶控制Python封裝方法。掌握串口調用機械臂方法;掌握機械臂控制Python封裝方法;掌握傳送帶控制Python封裝方法。職業(yè)能力目標01實驗目的實驗內容職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務三機械臂控制模塊與傳送帶開發(fā)此任務要求同學們復習并掌握第一張人工智能實驗平臺機械臂部分以及第二章傳送帶部分的知識內容,學習怎么接入機械臂的封裝,了解機械臂的SN碼,在實驗中學會編寫機械臂、傳送帶的封裝函數(shù),將機械臂與傳送帶結合使用,并能熟練運用。任務描述任務要求復習串口調用機械臂方法,完成機械臂動作封裝代碼編寫;編寫機械臂控制Python封裝方法,完成機械臂任務;掌握傳送帶控制Python封裝方法,實現(xiàn)機械臂物塊搬運,將物塊放置到傳送帶上,傳送帶運輸?shù)街付ㄎ恢茫瑱C械臂搬運物塊放置到指定位置。任務描述與要求02職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務三機械臂控制模塊與傳送帶開發(fā)任務分析思考一下在未來,機械臂能新增哪些用途,在我們學習了解完本章知識后,我們能如何改進傳送帶。根據自己的了解,要怎樣去了解認識USB麥克風,可以促進自己進一步地學習?任務分析與計劃03任務計劃表項目名稱創(chuàng)靈實驗平臺任務名稱機械臂控制模塊與傳送帶開發(fā)計劃方式自主設計計劃要求請用6個計劃步驟來完整描述出如何完成本次任務序號任務計劃1

2

3

4

5

6

通過上面的思考,你是否對本任務要完成的工作有所了解?讓我們一起來制訂完成本次任務的實施計劃吧!任務分析與計劃03職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務三機械臂控制模塊與傳送帶開發(fā)SN碼204知識儲備參數(shù)可調功能實現(xiàn)1參數(shù)可調功能實現(xiàn)04為了實現(xiàn)在小柔智能制造系統(tǒng)在運行過程中參數(shù)可調整,那么就需要根據對配置文件進行讀寫,即通過應用程序修改系統(tǒng)的配置文件,這樣在系統(tǒng)重啟后就可以用新的配置文件中參數(shù)。參數(shù)可調功能實現(xiàn)04可調參數(shù)內容:1.紅色色塊放置位置;2.綠色色塊放置位置;3.黃色色塊放置位置;4.藍色色塊放置位置;5.倉庫色塊的位置:即色塊起始的位置,因為色塊的相對位置是固定,所以這里這需要一個色塊的位置參數(shù)即可;6.色塊放置傳送帶的位置:色塊從倉庫搬運到傳送帶上放置的位置;7.機械臂的sn碼;8.偏正量調整。參數(shù)可調功能實現(xiàn)04配置文件數(shù)據格式文件名為【config.json】{"red":{"x":"65","y":"240","z":"24"},"green":{"x":"15","y":"185","z":"24"},"yellow":{"x":"65","y":"185","z":"24"},"blue":{"x":"15","y":"240","z":"24"},參數(shù)可調功能實現(xiàn)04配置文件數(shù)據格式文件名為【config.json】{"red":{"x":"65","y":"240","z":"24"},"green":{"x":"15","y":"185","z":"24"},"yellow":{"x":"65","y":"185","z":"24"},"blue":{"x":"15","y":"240","z":"24"},"start_position":{"x":"76","y":"252","z":"21"},"block_belt_position":{"x":"235","y":"30","z":"68"},"robot_list":["B3599L2652R3114","B2327L2856R2891"],"robot1":"B3599L2652R3114","robot2":"B2327L2856R2891","error_coordinate":{"x":"15","y":"-4"}}參數(shù)可調功能實現(xiàn)04功能實現(xiàn):假設config.json的路徑就在當前代碼的相同路徑下,那么config.json的路徑path=./config.json,打開方法我們用文件打開方法,并用json.load方法將配置文件中的配置參數(shù)轉成`dict`格式,方便后面對數(shù)據的使用。寫數(shù)據則用json.dump將修改后的dict數(shù)據寫入到配置文件中。參數(shù)可調功能實現(xiàn)04參數(shù)可調功能實現(xiàn)代碼:

參數(shù)可調功能實現(xiàn)04動手實驗:按照以下要求完成實驗:1.在<1>處,使用上述封裝的參數(shù)調整類讀取./config.json路徑下的配置內容2.在<2>處,將讀取到的配置參數(shù)中的紅色色塊的位置修改為{"x":"55","y":"240","z":"24"}3.在<3>處,將修改后的參數(shù)寫入./config.json配置文件中05知識儲備SN碼2參數(shù)可調功能實現(xiàn)13SN碼04

SN碼是SerialNumber的縮寫,有時也叫SerialNo,也就是產品序列號,產品序列是為了驗證“產品的合法身份”而引入的一個概念,它是用來保障用戶的正版權益,享受合法服務的;一套正版的產品只對應一組產品序列號。SN碼別稱:機器碼、認證碼、注冊申請碼等。SN碼04

SN碼有時也指“機器碼”,是有些軟件為了防止盜版,采取了一定的保護措施。在用戶注冊的時候會根據用戶軟件所安裝的計算機軟硬件信息生成唯一的識別碼,一般稱作機器碼,也叫序列號、認證碼、注冊申請碼等?;居猛?4SN碼

SN碼就是軟件開發(fā)商給軟件的一個識別碼,和人的身份證號碼類似,其作用主要是為了防止自己的軟件被用戶盜用。用戶要使用其軟件就必須知道序列號。序列號04SN碼

國際移動設備識別碼(InternationalMobileEquipmentIdentity,IMEI),即通常所說的手機序列號、手機“串號”,用于在移動電話網絡中識別每一部獨立的手機等移動通信設備,相當于移動電話的身份證。序列號共有15~17位數(shù)字,前8位(TAC)是型號核準號碼(早期為6位),是區(qū)分手機品牌和型號的編碼。序列號04SN碼

接著2位(FAC)是最后裝配號(僅在早期機型中存在),代表最終裝配地代碼。后6位(SNR)是串號,代表生產順序號。國際移動設備識別碼一般貼于機身背面與外包裝上,同時也存在于手機存儲器中,通過在手機撥號鍵盤中輸入*#06#即可查詢。確認號04SN碼

TCP協(xié)議工作在OSI的傳輸層,是一種可靠的面向連接的數(shù)據流協(xié)議,TCP之所以可靠,是因為它保證了傳送數(shù)據包的順序。順序是用一個序列號來保證的。響應包內也包括一個序列號,表示接收方準備好這個序列號的包。在TCP傳送一個數(shù)據包時,它會把這個數(shù)據包放入重發(fā)隊列中,同時啟動計時器,如果收到了關于這個包的確認信息,便將此數(shù)據包從隊列中確認號04SN碼刪除,如果在計時器超時的時候仍然沒有收到確認信息,則需要重新發(fā)送該數(shù)據包。另外,TCP通過數(shù)據分段中的序列號來保證所有傳輸?shù)臄?shù)據可以按照正常的順序進行重組,從而保障數(shù)據傳輸?shù)耐暾?。在TCP通訊中主要有連接的建立、數(shù)據的傳輸、連接的關閉三個過程!每個過程完成不同的工作,而且序列號和確認號在每個過程中的變化都是不同的。職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務三機械臂控制模塊與傳送帶開發(fā)05任務實施機械臂動作封裝2機械臂接入封裝1傳送帶控制封裝3機械臂接入封裝機械臂安裝問題:小柔智能制造案例是在兩臺機械臂的配合下完成倉庫貨物搬運與識別分揀,其中一臺負責搬運,另一臺則負責分揀。兩臺機械臂型號一致,但在整個分揀系統(tǒng)中所處的角色卻是不一樣,這樣就需要有一個識別機械臂身份唯一性的ID來進行識別機械臂,才能在系統(tǒng)中給它分配對應的角色,完成對應的任務。在設備安裝期間,安裝人員可以根據設備的ID給設備分配對應的身份。在前面的UI設計中,我們在UI中有一個“參數(shù)設置”,在“參數(shù)設置”功能中,有一個是用于選擇機械臂位置SN的選擇框,通過該選框可以為機械臂選擇“角色”,而SN則是機械臂的身份ID。所以,在編寫機械臂接入模塊時,第一重要的是獲取機械臂SN碼。機械臂接入封裝機械臂SN碼獲?。和ㄟ^前面課程的學習,我們知道,課程使用的機械臂是提供一個可以與機械臂進行通信的接口,通過發(fā)送串口數(shù)據,就可以與機械臂進行通信,那么有沒串口指令是用來獲取機械臂自身信息的呢?通過查閱機械臂廠商官方的文檔資料,我們可以發(fā)現(xiàn)發(fā)送`b"#5P2205"`指令機械臂會返回自身固件版本和識別身份唯一性的ID,所以,我們可以通過該指令來獲取機械臂的SN信息。機械臂接入封裝機械臂SN碼獲?。翰襟E一:機械臂SN碼獲?。?/p>

機械臂接入封裝機械臂SN碼獲取:步驟二:根據配置的SN碼,獲取串口對象:機械臂接入封裝機械臂SN碼獲取:根據接入的封裝代碼,完成動手練習。動手練習1:1.在<1>處,用串口獲取機械臂/dev/ttyACM0串口對象。機械臂接入封裝機械臂SN碼獲?。簞邮志毩?:1.在<1>處,填寫串口指令b"#5P2205",用于獲取機械臂信息,可參考Jupyter任務三。機械臂接入封裝機械臂SN碼獲?。簞邮志毩?:1.在<1>處,填寫串口指令b"#5P2205",用于獲取機械臂信息,可參考Jupyter任務三。05任務實施213機械臂接入封裝機械臂動作封裝傳送帶控制封裝機械臂動作封裝1.倉庫搬運動作:倉庫搬運動作是將色塊從倉庫區(qū)域搬運到傳送帶上的動作,這一組動作涉及,倉庫色塊抓取,色塊放置在傳送帶上,機械臂復位。需要的數(shù)據有每次抓取的色塊的位置坐標,和放置在傳送帶上的位置坐標??紤]到解耦性,這些數(shù)據應該以接口的形式傳輸,即以函數(shù)參數(shù)的形式進行傳輸。復位可以考慮固定位置復位。機械臂動作封裝2.色塊分揀動作:色塊分揀動作是將識別出來的色塊根據類別搬運到指定類別放置的位置,這組動作同樣需要給個色塊在傳送帶上的具體位置,和色塊類別,通過在數(shù)據表里檢索到對應的位置,來確定具體應該存放的坐標,如下圖所示。機械臂動作封裝2.色塊分揀動作:代碼注釋:defmove_to_belt(self,start_position,end_position):'''將色塊從倉庫搬運到傳送帶上:paramstart_position:色塊起始位置:paramend_position:色塊最終放置位置:return:'''self.robot1.write(b"G0X120Y0Z60F90\n")self.robot1.write(bytes("G0X"+str(start_position["x"])+"Y"+str(start_position["y"])+"Z90F90\n",encoding='utf-8'))#設置機械臂移動的坐標x,ytime.sleep(1)#延時1s機械臂動作封裝2.色塊分揀動作:動手練習3:1.在<1>處,填上對應機械臂動作封裝中的方法,實現(xiàn)下面給定的倉庫坐標和傳送帶坐標,機械臂將色塊從倉庫位置搬運到傳送帶上。2.在<2>處,填上一個色塊在傳送帶上的位置坐標,可以用假設坐標,后面目標檢測任務完成后即可用真實的坐標(注意,數(shù)據結構),在<3>填寫色塊顏色,使得機械臂完成從傳送帶上搬運色塊到色塊存放區(qū)域。機械臂動作封裝2.色塊分揀動作:參數(shù)可調功能實現(xiàn)動手實驗:按照以下要求完成實驗:1.要求編寫代碼,實現(xiàn)點擊按鈕輸出“運行傳送帶”,傳輸帶運行,再次點擊按鈕時輸出“停止運行

傳送帶”,傳送帶停止運行。2.在<1>處,使用belt對象調用belt_move()函數(shù),啟動傳送帶。3.在<2>處,使用belt對象調用belt_stop()函數(shù),停止傳送帶。參數(shù)可調功能實現(xiàn)動手實驗:按照以下要求完成實驗:1.要求編寫代碼,實現(xiàn)點擊按鈕輸出“運行傳送帶”,傳輸帶運行,再次點擊按鈕時輸出“停止運行

傳送帶”,傳送帶停止運行。2.在<1>處,使用belt對象調用belt_move()函數(shù),啟動傳送帶。3.在<2>處,使用belt對象調用belt_stop()函數(shù),停止傳送帶。05任務實施213機械臂接入封裝機械臂動作封裝傳送帶控制封裝傳送帶控制封裝傳送帶在小柔智能制造項目中的主要功能是運輸色塊,將色塊從搬運端運輸?shù)阶R別端,所以在傳送帶功能的封裝上主要實現(xiàn)兩個功能,一個是運行傳送帶,另一個功能則是停止傳送帶。通過前面的傳送帶部分的學習,我們封裝如下圖代碼,打開Jupyter:傳送帶控制封裝傳送帶控制封裝傳送帶控制封裝職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務三機械臂控制模塊與傳送帶開發(fā)任務檢查與評價06序號評價內容評價標準分值得分1知識運用(20%)掌握相關理論知識,理解本次任務要求,制定詳細計劃,計劃條理清晰,邏輯正確(20分)20分

理解相關理論知識,能根據本次任務要求、制定合理計劃(15分)了解相關理論知識,有制定計劃(10分)無制定計劃(0分)2專業(yè)技能(40%)完成機械臂接入封裝,機械臂動作封裝,傳送帶控制封裝。(40分)40分

完成機械臂接入封裝,機械臂動作封裝。(25分)完成機械臂接入封裝。(15分)沒有完成離線ASR語音實驗。(0分)3核心素養(yǎng)(20%)具有良好的自主學習能力、分析解決問題的能力、整個任務過程中有指導他人(20分)20分

具有較好的學習能力和分析解決問題的能力,任務過程中無指導他人(15分)能夠主動學習并收集信息,有請教他人進行解決問題的能力(10分)不主動學習(0分)4課堂紀律(20%)設備無損壞、設備擺放整齊、工位區(qū)域內保持整潔、無干擾課堂秩序(20分)20分

設備無損壞、無干擾課堂秩序(15分)無干擾課堂秩序(10分)干擾課堂秩序(0分)總得分1、請參照評價標準完成自評和對其他小組的互評。2、各組請代表分析本組任務實施經驗。職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務三機械臂控制模塊與傳送帶開發(fā)任務小結07

在大家學習完本任務后,是否還有許多為解決的問題?那么接下來我們來進行任務小結,通過流程圖了解本章學習了什么,對相應知識進行鞏固復習。職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務三機械臂控制模塊與傳送帶開發(fā)任務拓展08請根據所學內容,編寫機械臂封裝接入代碼。并編寫代碼控制傳送帶運行、停止、加速運行、反轉等功能。1機械臂接入與動作封裝;1.參數(shù)調整方法;2.機械臂與傳送帶控制方法。解題

思路提示任務要求2傳送帶控制封裝。謝謝大家學習項目五小型柔性智能制造案例創(chuàng)靈實驗平臺色塊分類堆垛模塊開發(fā)任務四職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務四色塊分類堆垛模塊開發(fā)復習并掌握第四章YOLO模型實現(xiàn)目標檢測,并能夠根據所學內容編寫相應的opencv實現(xiàn)攝像頭獲取圖片;實現(xiàn)色塊目標檢測圖像推理功能;在小柔智能制造業(yè)務邏輯實現(xiàn)中應用。掌握opencv實現(xiàn)攝像頭獲取圖片;掌握色塊目標檢測圖像推理功能實現(xiàn);掌握小柔智能制造業(yè)務邏輯實現(xiàn)。職業(yè)能力目標01實驗目的實驗內容職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務四色塊分類堆垛模塊開發(fā)要求同學們復習并掌握第四章YOLO模型實現(xiàn)目標檢測,并能夠根據所學內容編寫相應的opencv實現(xiàn)攝像頭獲取圖片,以及實現(xiàn)色塊目標檢測圖像推理功能。最后通過在小柔智能制造業(yè)務邏輯實現(xiàn)中應用,達到學習的目的。任務描述任務要求復習并完成opencv實現(xiàn)攝像頭獲取圖片,成功采集到圖片;完成色塊目標檢測圖像推理功能實驗,實現(xiàn)色塊識別;完成小柔智能制造業(yè)務邏輯設計,給出設計思路。任務描述與要求02職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務四色塊分類堆垛模塊開發(fā)任務分析思考一下在我們學習了解完本章知識后,我們能如何改進色塊分類模塊。根據自己的了解,要怎樣去了解認識色塊分類模塊,可以促進自己進一步地學習?任務分析與計劃03任務計劃表項目名稱創(chuàng)靈實驗平臺任務名稱色塊分類堆垛模塊開發(fā)計劃方式自主設計計劃要求請用6個計劃步驟來完整描述出如何完成本次任務序號任務計劃1

2

3

4

5

6

通過上面的思考,你是否對本任務要完成的工作有所了解?讓我們一起來制訂完成本次任務的實施計劃吧!任務分析與計劃03職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務四色塊分類堆垛模塊開發(fā)業(yè)務邏輯204知識儲備裝飾器1裝飾器04

大家還記得異步裝飾器如何使用嗎?那么裝飾器是什么?裝飾器的作用是當你編寫了一段程序,發(fā)現(xiàn)程序運行的很慢,調試過程中,你需要知道程序執(zhí)行過程中每一個函數(shù)的執(zhí)行時間,以此來確定哪里需要優(yōu)化性能,通常的做法是在函數(shù)開始的時候記錄一次時間,在函數(shù)結束的時候記錄一次時間,這兩個時間的差值就是函數(shù)的執(zhí)行時間。異步裝飾器04-Python裝飾器:可以讓被裝飾的函數(shù)在不修改代碼的情況下增加額外的功能,裝飾器本質上是一個函數(shù)-異步:即非阻塞,意味著在執(zhí)行某項任務時候不會阻塞后續(xù)或其他任務的執(zhí)行-多線程:在進程基礎上開辟多個執(zhí)行任務的線程05知識儲備業(yè)務邏輯2裝飾器13業(yè)務邏輯04

智能網是用于生成和提供電信新業(yè)務的網路結構體系。主要由業(yè)務交換點、業(yè)務控制點、業(yè)務管理點和業(yè)務創(chuàng)建點組成。主要目標是實現(xiàn)新業(yè)務的快速引入。業(yè)務邏輯是在智能網中,對利用積木式組件(SIB)和基本呼叫處理(BCP)模塊的組合來完成每項業(yè)務特征的過程描述。智能網業(yè)務邏輯在不同的平面中有不同的表示,在總功能平面中,有一組總業(yè)務邏業(yè)務邏輯04輯(GSL),它說明了完成各個業(yè)務獨立模塊(SIB)鏈接在一起的次序;在分布功能平面中,分布業(yè)務邏輯(DSL)是實現(xiàn)SIB功能時各個功能實體的動作和各個功能實體間的信息流;在物理平面中,包含業(yè)務控制功能(SCF)的物理實體執(zhí)行業(yè)務邏輯程序。通信有限狀態(tài)機模型是由表示進程的有限狀態(tài)機和表示進程之間通道的先進先出隊列(FIFO)組成。業(yè)務邏輯層04業(yè)務邏輯層又可以細分為業(yè)務實體、業(yè)務組件和業(yè)務工作流。業(yè)務實體(Entity)相當于以面向對象的類實例來代表數(shù)據庫中的實體,可能使用過DataReader或者Dataset之類的對象來代表數(shù)據庫中訪問的行,不過,在使用這些對象時,需要通過列名稱或索引來訪問各列中的數(shù)據。這將導致使用這些對象的頁面與數(shù)據庫實現(xiàn)耦合。通過編寫一個實體層,將這種耦合性轉移到了業(yè)務邏輯層中;于是,如果數(shù)據庫發(fā)生了某些變動,可以修改業(yè)務邏輯層,而不需要維護頁面層。實體層中,不會包含業(yè)務邏輯;實體只是一個數(shù)據的集合體。業(yè)務組件負責業(yè)務規(guī)則(例如,計算稅率、折扣等),同時負責實體層到數(shù)據訪問層的過渡工作。職業(yè)能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08任務四色塊分類模塊開發(fā)05任務實施色塊分揀圖像推理功能實現(xiàn)2opencv獲取圖片1色塊分揀堆垛業(yè)務邏輯實現(xiàn)3opencv獲取圖片1.檢查usb攝像頭:小柔智能制造項目中色塊分揀是基于計算機視覺來實現(xiàn),那么首先就是要獲取到對應的視覺數(shù)據,通過攝像頭將采集到的圖片數(shù)據進行預處理,再將數(shù)據通過人工智能模型進行識別判斷,返回識別結果。所以,通過opencv實現(xiàn)攝像頭獲取圖片是識別的第一步。opencv獲取圖片1.檢查usb攝像頭:注意:上述指令如沒有輸出,則表明usb攝像頭沒安裝好,如果輸出video0則表明usb攝像頭已正常連接,可以使用。opencv獲取圖片1.檢查usb攝像頭:動手練習1:1.在<1>處,輸入指令查看設備usb攝像頭是否正常接入。opencv獲取圖片2.opencv獲取圖片,視頻流:opencv獲取圖片2.opencv獲取圖片,視頻流:步驟一:導入線程庫、jupyter畫圖依賴庫。

Thread:創(chuàng)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論