<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設計應用 > 基于STM32F103的貼片機控制系統的設計與實(shí)現

基于STM32F103的貼片機控制系統的設計與實(shí)現

作者: 時(shí)間:2016-10-15 來(lái)源:網(wǎng)絡(luò ) 收藏

摘要:本文采用RBT6芯片設計并實(shí)現了一款小型化桌面型的。首先介紹了的結構及各個(gè)模塊的組成,分析了其中運動(dòng)控制系統模塊的硬件組成、軟件設計方案,對核心電路部分、舵機的驅動(dòng)程序以及串口通訊數據包的設計做了詳細的介紹。經(jīng)過(guò)調試,該設計方案能夠較為準確和高效的完成自動(dòng)貼片工作。

本文引用地址:http://dyxdggzs.com/article/201610/306800.htm

又稱(chēng)“表面貼裝系統”(Surface Mount System),是一種通過(guò)移動(dòng)、吸取、安放動(dòng)作把表貼元件精準放置在指定位置的一種自動(dòng)化設備。在實(shí)際生產(chǎn)線(xiàn)中,先由點(diǎn)膠機對PCB板進(jìn)行點(diǎn)膠操作,然后由貼片機進(jìn)行貼裝操作,最后由回流焊機焊接,完成整個(gè)PCB板的焊接任務(wù),是SMT流水線(xiàn)中不可或缺的一環(huán)。目前發(fā)達國家壟斷了貼片機的主要領(lǐng)域,我國的貼片機產(chǎn)業(yè)完全靠進(jìn)口。而且在實(shí)際生產(chǎn)中,國際上的自動(dòng)貼片機雖然效率與精度最高,但大都造價(jià)昂貴,功能單一,適用于大型企業(yè)。而手動(dòng)貼片機造價(jià)低廉,但效率極低,精度取決于操作者得水平,且無(wú)法解放雙手。

本文以RBT6為主控芯片,設計了一種適應于個(gè)體經(jīng)營(yíng)者、學(xué)校實(shí)驗以及科研制板等領(lǐng)域的自動(dòng)貼片機,既能解放雙手,增加效率,又能不失精度,價(jià)格適中。

1 貼片機模塊設計方案

本文將貼片機模塊化的進(jìn)行設計與編程,模塊化后的整機系統由3個(gè)部分組成:機械傳動(dòng)系統、機器視覺(jué)系統和運動(dòng)控制系統,如圖1所示。

基于STM32F103的貼片機控制系統的設計與實(shí)現

1.1 貼片機機械傳動(dòng)系統的設計方案

1.1.1 貼片機X軸Y軸設計方案

本方案采用X—Y軸兩軸聯(lián)動(dòng),Z軸獨立運動(dòng)的設計方案。其中X-Y軸由通過(guò)同步帶傳動(dòng)進(jìn)行機械運動(dòng)。具體實(shí)現結構如圖2所示。

基于STM32F103的貼片機控制系統的設計與實(shí)現

如圖所示,Y軸固定于底座上,帶動(dòng)同步帶輪旋轉,同步輪帶動(dòng)同步帶做直線(xiàn)運動(dòng),光軸滑塊與同步帶相連。從而跟隨同步帶演光軸導軌做Y軸方向的的運動(dòng)。X軸整體機構與Y軸相似,提供X軸方向上的直線(xiàn)運動(dòng)。其整體固定與Y軸滑塊之上,當Y軸運動(dòng)時(shí)同時(shí)帶動(dòng)X(jué)軸運動(dòng)。從而實(shí)現X—Y兩軸聯(lián)動(dòng)。

1.1.2 貼片機Z軸設計方案

本設計方案中Z軸由舵機、光軸導軌、吸筆、拖拽針、攝像頭組成。其結構如圖3所示。

基于STM32F103的貼片機控制系統的設計與實(shí)現

其中吸筆由空心軸制作而成,當步進(jìn)電機旋轉時(shí),帶動(dòng)吸筆吸盤(pán)選擇,從而提供了貼片機旋轉軸的運動(dòng)。旋轉吸筆用于改變元器件貼裝方向。拖拽針與吸筆固定在同一直線(xiàn)上,用于拖拽料盤(pán),從而實(shí)現送料功能。拖拽針與吸筆分別固定在2組光軸導軌上,底部安裝有彈簧,用于拖拽針與吸筆復位。舵機控制壓桿左右旋轉,從而壓動(dòng)吸筆與拖拽針進(jìn)行向下運動(dòng),當壓桿處于中間態(tài)時(shí),彈簧將吸筆與拖拽針

彈起,回到初始位置。攝像頭安裝在工作臺上方,用于俯視PCB板。

1.2 機器視覺(jué)系統設計方案

本方案采用兩臺CCD相機、環(huán)形LED光源及圖像處理設備組成。其中一臺CCD相機安裝在貼片機Z軸上。與貼裝頭一起運動(dòng),用于俯視PCB板,采集各定位點(diǎn)坐標信息,計算X—Y軸運動(dòng)偏移量,輔助定位。另外一臺CCD相機固定在工作臺上,向上仰視。當貼裝頭吸取原件后,運動(dòng)至相機上方,相機采集元器件圖像。計算旋轉角度偏移量及X—Y軸運動(dòng)偏移量。環(huán)形LED光源提供相機采集圖像時(shí)的背光,提高成像質(zhì)量。計算機用于處理采集到的圖像數據,分析計算后將控制指令傳送至運動(dòng)控制系統。

1.3 運動(dòng)控制系統設計方案

運動(dòng)控制部分由軟件系統與硬件設備組成。其中軟件部分分為上位機及下位機。上位機即計算機。下位機采用RBT6微控制器作為核心控制器。上位機與下位機由串口數據線(xiàn)連接。硬件設備由步進(jìn)電機、步進(jìn)電機驅動(dòng)器、舵機、電磁閥等組成。

運動(dòng)控制系統工作流程如圖4所示。

基于STM32F103的貼片機控制系統的設計與實(shí)現

2 運動(dòng)控制系統硬件設計

2.1 運動(dòng)控制系統結構

貼片機控制系統模塊所完成的主要任務(wù)是,在上層控制器的控制下,對步進(jìn)電機驅動(dòng)器進(jìn)行控制,使各軸能夠進(jìn)行“受控運動(dòng)”,實(shí)現運動(dòng)控制系統所需求的各軸起制動(dòng)、正反轉、調速和保護等功能。

控制系統的控制模式是以PC機為平臺、以微控制器為核心協(xié)調工作。通用PC機負責數控程序編輯、人機界面管理等功能;微控制器用來(lái)管理子程序以及負責機械本體的運動(dòng)控制和邏輯控制,支持用戶(hù)的開(kāi)發(fā)和擴展,并具有上、下兩級的開(kāi)放性。

本設計方案采用STN32F103微控制器作為核心器件,協(xié)調3個(gè)步進(jìn)電機驅動(dòng)器控制步進(jìn)電機的運行。同時(shí)獲取編碼器數據,限位開(kāi)關(guān)狀態(tài),并控制舵機、電磁閥等器件的運行。各器件連接圖如圖5所示。

基于STM32F103的貼片機控制系統的設計與實(shí)現

本設計方案所采用的主控芯片STM32F103RBT6是一款基于A(yíng)RM Codex—M3內核的32位處理器,具有杰出的功耗控制與眾多外設。該芯片內置128K FLASH、20K SRAM、2個(gè)SPI、3個(gè)串口、1個(gè)USB、1個(gè)CAN、2個(gè)12位的ADC、RTC、51個(gè)可用IO口。其電路圖如圖6所示。

基于STM32F103的貼片機控制系統的設計與實(shí)現

2.2 電源電路

電源電路采用AMS1117—3.3作為電壓轉換芯片。AMS1117是一款正電壓輸出低壓差的三端線(xiàn)性穩壓電路,在輸出1 A電流時(shí),輸入輸出的電壓差典型值為1.8 V,內部集成過(guò)熱保護和限流電路,確保芯片和電源系統的穩定性。

該電路輸入端與輸出端各接1個(gè)0.1μF的非極性獨石電容和1個(gè)220μF的極性電容。這兩組電容起到了穩壓濾波的作用。

2.3 串口電平轉換電路

串行接口是嵌入式系統中較為常用的一種接口。本系統采用RS-232總線(xiàn)于上位機進(jìn)行通信,采用MAX232芯片來(lái)完成RS-232串行接口的電平轉換。電路如圖8所示。

基于STM32F103的貼片機控制系統的設計與實(shí)現

2.4 步進(jìn)電機驅動(dòng)電路

步進(jìn)電機必須有驅動(dòng)器和控制器才能正常工作。驅動(dòng)器的作用是對控制脈沖進(jìn)行環(huán)形分配、功率放大,使步進(jìn)電機繞組按一定順序通電,控制電機轉動(dòng)。本設計采用DM442數字式步進(jìn)電機驅動(dòng)器。該驅動(dòng)器可以設置512內的任意細分以及額定電流內的任意電流值,能夠滿(mǎn)足大多數場(chǎng)合的應用需要。電路連線(xiàn)如圖9所示。

基于STM32F103的貼片機控制系統的設計與實(shí)現

通過(guò)步進(jìn)電機驅動(dòng)器控制步進(jìn)電機的方法較為簡(jiǎn)單,僅需通過(guò)單片機IO口給出不同頻率的方波脈沖信號即可控制步進(jìn)電機的速度,通過(guò)另一個(gè)IO口給出高低電平控制電機旋轉方向。本文所采用的步進(jìn)電機步距角為1.8°,因此驅動(dòng)器每接收200個(gè)脈沖信號,步進(jìn)電機旋轉一周。

3 運動(dòng)控制系統軟件設計

下位機控制程序由串口收發(fā)程序,限位開(kāi)關(guān)檢測程序,舵機驅動(dòng)程序、步進(jìn)電機驅動(dòng)等部分組成。下面將對舵機驅動(dòng)和串口收發(fā)部分做詳細的介紹。

3.1 舵機驅動(dòng)程序

根據1.1.2中的介紹,舵機用來(lái)控制吸筆和拖拽針的運動(dòng),在單片機的控制中常用PWM(Pulse Width Modulation)調制來(lái)驅動(dòng)它。脈沖寬度調制(PWM)是利用微處理器的數字輸出來(lái)對模擬電路進(jìn)行控制的一種非常有效的技術(shù),其優(yōu)越性在于驅動(dòng)電子設備的簡(jiǎn)單性和計算機接口的容易性。在舵機控制系統中,輸出的PWM信號通過(guò)功率器件將所需的電流和能量傳送到舵機線(xiàn)圈繞組中,來(lái)控制舵機的正反轉。

STM32的定時(shí)器除了TIM6和TIM7,其他的定時(shí)器都可以用來(lái)產(chǎn)生PWM輸出。其中高級定時(shí)器TIM1和TIM8可以同時(shí)產(chǎn)生多達7路的PWM輸出。而通用定時(shí)器也能同時(shí)產(chǎn)生多達4路的PWM輸出,這樣,STM32最多可以同時(shí)產(chǎn)生30路PWM輸出。由于只控制一個(gè)舵機,這里我們僅利用TIM3的CH2產(chǎn)生一路PWM輸出。具體步驟如下:

1)開(kāi)啟TIM3時(shí)鐘,配置PA7為復用輸出。

2)設置TIM3的ARR和PSC,控制輸出PWM的周期。

3)設置TIM3_CH2的PWM模式。

4)使能TIM3的CH2輸出,使能TIM3。

5)修改TIM3_CCR2來(lái)控制占空比。

由于舵機所需的控制信號標準周期是20毫秒,最低不得少于15毫秒。中位脈沖寬度是1.5毫秒,脈沖寬度在加減1.5毫秒之間內變化??煽胤秶话愣际?.5~2.5毫秒。即控制舵機運行至兩個(gè)機械極限位置的信號周期為0.5~2.5毫秒,對應占空比為2.5%-12.5%。本方案中舵機需保持在3個(gè)狀態(tài),分別是左極限,右極限和中間位置。用于控制拖拽針下移,吸筆下移和復位。

因此,要控制舵機,首現需要一個(gè)頻率為50赫茲的PWM波,然后調節其占空比為2.5%-12.5%。PWM輸出頻率的計算公式為:

基于STM32F103的貼片機控制系統的設計與實(shí)現

這里系統時(shí)鐘頻率為72000000赫茲,所需PWM頻率為50赫茲。為方便計算,同時(shí)保證自動(dòng)重裝載值和預分頻系數均為整數,這里取自動(dòng)重裝載值為1000。計算得預分頻系數為1440-1=1439。因此調用PWM初始化函數為:PWM_Init(1000,1439);

PWM輸出波形占空比計算公式為:

基于STM32F103的貼片機控制系統的設計與實(shí)現

由此計算得到:

左極限位置時(shí)TIM3->CCR2=25,

右極限位置時(shí)TIM3->CCR2=125,

中間位置時(shí)TIM3->CCR2=75。

3.2 配置

STM32的串口資源相當豐富的,最多可提供5路串口(STM32F103RBT6只有3個(gè)串口),有分數波特率發(fā)生器、支持同步單線(xiàn)通信和半雙工單線(xiàn)通訊、支持LIN、支持調制解調器操作、智能卡協(xié)議和IrDA SIR ENDEC規范(僅串口3支持)、具有DMA等。

STM32的串口配置需要開(kāi)啟串口時(shí)鐘,并設置相應IO口的模式,配置波特率、數據位長(cháng)度、奇偶校驗位等信息。STM32的串口波特率計算公式如下:

基于STM32F103的貼片機控制系統的設計與實(shí)現

上式中,fPCLKx是給串口的時(shí)鐘;USARTDIV是一個(gè)無(wú)符號定點(diǎn)數。

3.3 串口數據包格式設計

表1為串口與單片機通信的數據包格式,每幀有9個(gè)字節,開(kāi)始六個(gè)字節是包頭標志、器件地址、數據類(lèi)型、起始地址以及數據長(cháng)度,其中數據類(lèi)型有:讀數據指令r(0x72)、預設參數w(0x77)、運動(dòng)指令m(0x6D)、請求重發(fā)指令c(0x63)、正常返回指令b(0x62)和放棄通信指q(0x71)。然后是10個(gè)字節的數據位,通常數據位為2個(gè)4字節的數據,為了避免出現數據對齊問(wèn)題,在后面加入兩個(gè)值為0的字節。最后是兩

個(gè)字節的校驗位和結束標志位,采用CRC16進(jìn)行校驗。

基于STM32F103的貼片機控制系統的設計與實(shí)現

數據由上位機即PC主動(dòng)發(fā)送,下位機即單片機被動(dòng)等待接收,系統在每次上電初始化時(shí)進(jìn)行一次握手,下位機在接收到的包頭數據中匹配自己的器件地址,一致時(shí)則接收命令,否則將收到的數據包拋棄。當上層控制器向單片機發(fā)送讀數據指令r(0x72)時(shí),其數據位均為0;單片機收到指令后,將狀態(tài)信息填入數據位,回發(fā)給上位機。當上位機向單片機發(fā)送預設參數w(0x77)數據包時(shí),將參數信息填入相應數據位;單片機收到后,將數據寫(xiě)入EEPROM中并發(fā)送反饋,反饋幀以同樣的類(lèi)型、將存好的數據再次讀出填入數據位,發(fā)送給上位機進(jìn)行匹配校驗。當上位機向單片機發(fā)送運動(dòng)指令m(0x6D)時(shí),將數據位按設定的格式填入數據位;單片機讀取并按照指令內容進(jìn)行運動(dòng)。

基于STM32F103的貼片機控制系統的設計與實(shí)現

單片機正確接收到除預設參數之外的數據時(shí)向主機回發(fā)正常返回指b(0x62);若收到上一組主機的數據后發(fā)現數據出錯,則請求重發(fā)指令c(0x63),主機接收到此回應指令后執行重發(fā)操作;若連續通信錯誤并超過(guò)最大限制后則發(fā)送的放棄指令q(0x71)。因為不涉及有效數據,所以這三種指令的起始地址、數據長(cháng)度、有效數據均為0。

4 結束語(yǔ)

本文根據目前貼片機市場(chǎng)上的應用現狀,提出了低成本,小型化的設計方案。對貼片機整機的機械結構進(jìn)行了優(yōu)化設計。分別對貼片機的機械傳動(dòng)系統,機器視覺(jué)系統及運動(dòng)控制系統給出了設計思路。針對運動(dòng)控制系統,設計了具體的硬件與軟件實(shí)現方案,并對整機工作過(guò)程進(jìn)行詳細說(shuō)明。本文設計的貼片機運動(dòng)控制程序經(jīng)過(guò)調試,達到了預期目標,現已在學(xué)校實(shí)驗室的應用中取得了不錯的成果。

  • STM32單片機中文官網(wǎng)
  • STM32單片機官方開(kāi)發(fā)工具
  • STM32單片機參考設計


評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>