《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于ARM的直流電機調速系統的設計與實現
基于ARM的直流電機調速系統的設計與實現
EEworld
摘要: 在智能小車的研制開發中,很重要的一部分就是智能小車要能根據周圍障礙物的情況自主的調節行駛速度和行駛方向。本文中所設計的直流電機調速系統是智能小車的一個重要組成部分,直流電機調速系統主要由S3C44B0X處理器和電機驅動芯片L298N構成,主要功能是驅動小車的兩個車輪,調節小車的行駛速,通過改變兩個車輪的轉速差調節行駛方向。
Abstract:
Key words :

  在智能小車的研制開發中,很重要的一部分就是智能小車要能根據周圍障礙物的情況自主的調節行駛速度和行駛方向。本文中所設計的直流電機調速系統是智能小車的一個重要組成部分,直流電機調速系統主要由S3C44B0X處理器和電機驅動芯片L298N構成,主要功能是驅動小車的兩個車輪,調節小車的行駛速,通過改變兩個車輪的轉速差調節行駛方向。


  
1  硬件設計

  由ARM公司設計的采用RISC架構的ARM處理器性能強,功耗低,體積小,支持Thumb(16位)/ARM(32位)雙指令集,指令執行速度快。目前ARM系列微處理器在32位RISC嵌入式產品中已經占據75%以上的市場份額。尤以ARM7TDMI系列應用最廣,其性價比也是最高。

  1.1  S3C44B0X簡介

  S3C44B0X是由Samsung公司推出的基于ARM7TDMI核的16/32位RISC處理器。此款處理器提供了豐富的通用的片上外設,大大減少了系統電路中除處理器以外的元器件配置。S3C44B0X具有6個16位定時器,每個定時器可以按照中斷模式或DMA模式運行。定時器0,1,2,3,4具有PWM功能,定時器5是一個內部定時器。定時器0和1,2和3,4和5分別共享一個8位的預分頻器(Prescaler),預分頻值的范圍為0—255,通過寄存器TCFG0設定三個預分頻器的值;定時器0,1,2,3還各擁有一個具有5個不同分頻信號(1/2,1/4,1/8,1/16,1/32)的時鐘分割器(Divider),定時器4和5則各具有一個包含4個分頻信號(1/2,1/4,1/8,1/16)的時鐘分割器。這6個定時器的分割值通過寄存器TCFG1設定。

  定時器輸入時鐘頻率=MCLK/Prescaler/Divider。其中MCLK=60MHz是系統的主頻。

  1.2   硬件實現

  為提高系統效率、降低功耗,功放驅動電路采用基于雙極型H橋型脈寬調制方式(PWM)的集成電路L298N。L298N是SGS公司的產品,內部包含二個H橋的高電壓大電流橋式驅動器,接收標準TTL邏輯電平信號,可驅動46伏、2安培以下的電機,工作溫度范圍從-25度到130度。其內部的一個H橋原理圖如圖1所示。EnA是控制使能端,控制OUTl和OUT2之間電機的停轉, IN1、IN2腳接入控制電平,控制OUTl和OUT2之間電機的轉向。當使能端EnA有效,IN1為低電平IN2為高電平時,三極管2,3導通,1,4截止,電機反轉。當IN1和IN2電平相同時,電機停轉。

 

  另一個H橋的工作原理同上。由EnB控制OUT3和OUT4之間電機的停轉,根據IN3、IN4腳的輸入電平情況控制OUT3和OUT4之間電機的轉向。

  由于S3C44B0X本身就帶有5個PWM輸出口,直接輸出控制信號到L298N即可,無須另加電路。系統原理框圖如圖2所示。系統中選用了工作在中斷模式下的定時器1和2作為產生PWM的定時器。通過編程設定I/O口PE4和PE5作為定時器1,2輸出PWM的端口,接入L298N的EnA和EnB端口,根據定時器1,2輸出的PWM頻率分別控制兩個直流電機的轉速。 PE6設定為輸出端口連接IN1并通過一反向器連接IN2;同樣,PE7也設為輸出端口,接入IN3并經一個反向器接入IN4。通過接入反向器,IN1和IN2,IN3和IN4就不會同時處于高電平或低電平,即不會因為IN1和IN2,IN3和IN4電平相同而使電機停止轉動。電機的停止操作可以通過調制脈沖寬度為0即占空比為0或者關閉定時器的使能位實現。這樣只需一路信號PE6就可控制IN1和IN2的狀態,PE7控制IN3和IN4的狀態,從而使得系統的控制信號得到減少,在一定程度上簡化了系統。為保證L298N驅動芯片正常工作,還要在其與直流電機之間加入四對續流二極管

用以將電機中反向電動勢產生的電流分流到地或電源反向電動勢對L298N產生損害。

 

 

  2  系統的軟件設計  

  2.1 定時器工作方式

  在S3C44B0X中,每個定時器具有一個倒計時器,通過定時器時鐘源驅動16位倒計時寄存器TCNTn。定時器啟動前,要向定時計數緩沖區寄存器(TCNTBn)寫入一個初始值,這個值在定時器啟動時載入到倒計時器TCNTn中。在定時器的比較緩沖器寄存器(TCMPBn)中同樣也要寫入一初始值,運行時用來載入到比較寄存器TCMPn中與倒計時器TCNTn的值相比較。系統啟動時,需要通過置手動刷新位的方式,將TCMPBn和TCNTBn這兩個緩沖區的值載入到TCMPn和TCNTn中。TCMPBn和TCNTBn這兩個緩沖區的應用(即雙緩沖器)使定時器能夠在頻率和占空比同時變化時,仍然產生一個穩定的輸出。一般啟動定時器的步驟如下:

  1),將初始值寫入到TCNTBn和TCMPBn中。

  2),設置對應定時器的自動重載位

  3),設置對應定時器的手動更新位,反向器置為off狀態.

  4),設置對應定時器的啟動位來啟動定時器,同時清除手動更新位。

  此時定時器TCNTn開始倒計數,當TCNTn具有與TCMPn相同的值時,TOUTn的邏輯電平由低變高。當計數器

TCNTn到達0時將產生定時器中斷請求,通知CPU定時器操作已經完成。此時,如果自動重載控制位使能,TCNTBn的值會自動載入到TCNTn寄存器中,并開始下一操作周期。如果通過清除定時器使能位等方法使定時器停止,計數值將不會自動重載。

  2.2  調制PWM

  脈沖寬度調制(Pulse Width Modulation—PWM)是指將輸出信號的基本周期固定,通過調整基本周期內工作周期的大小來控制輸出功率。對于一個定時器來說,其時鐘源輸入頻率一般不變,即TCFG0(定時器預分頻值)和TCFG1(定時器分割值)的值設定后就不需改變。這樣對于PWM提供了一個穩定的時鐘源。電機的轉速與電機兩端的電壓成比例,而電機兩端的電壓與控制波形的占空比成正比,因此電機的速度與占空比成比例,占空比越大,電機轉得越快。系統中PWM脈沖頻率就由TCNTBn決定,PWM脈沖寬度值則由TCMPBn的值來決定,而占空比即為TCMPn/TCNTn。如果要使電機轉速下降,即得到一個比較低的PWM脈寬輸出值,可以減少TCMPBn的值;要使電機轉速增加,即得到一個更高的PWM的輸出值,可以增加TCMPBn的值。由于雙緩沖器的特性,下一個PWM周期的TCMPBn值可以通過ISR(中斷服務程序)或其他手段在當前PWM周期中低電平時的任何一點寫入,即在程序中可以通過中斷重新設定TCMPBn的值來改變電機的轉速。緩沖區TCMPBn,TCNTBn的值不一定等于這個周期的TCMPn,TCNTn的值,但一定是TCMPn,TCNTn的下一個周期的值。

  2.3  程序代碼

  本文中的應用程序是在ADS1.2的開發環境下交叉編譯后下載到Flash中運行的。程序代碼(以定時器1為例):

  //初始化端口
  void  Init_PortE( )
  {
  rPCONE=0x5a00; //定義I/O口//PE4,PE5,PE6,PE7的//功能
  rPUPE=0xf8; //禁止相應位的電阻上拉使能
  }
  //啟動A號電機,此電機由定時器1控制
  void  Start_MotorA ( )
  {
  rTCNTB1=Motor_CONT;//給兩個緩沖器//賦值
  rTCMPB1=Motor_cont;
  rTCON |=(0x01<<11); //定時器1自動重載
  rTCON |=(0x01<<9); //手動刷新置位
  rTCON &= ~ (0x01<<10); //關反向器
  rTCON |=(0x01<<8); //啟動定時器1
  rTCON &= ~ (0x01<<9); //清手動刷新位
  }
  //A電機停止
  void  Stop_Motor1()
  {
  rTCON &= ~ (0x01<<8); //清定時器1使能位
  }
  //改變電機占空比和轉向
  void SetPWM (int valueA, int drct)
  {
  rPDATE=drct; // drct定義PE6口輸出高電平還是低電平,控制電機轉向
  rTCMPB1=Motor_COUNT*valueA/0x64;//valueA為占空比,亦可設置valueA為0使電機A停//止轉動。
  }
  另一電機的相關設置同上。小車行進過程中可以同時改變兩組PWM的占空比來調節小車的行駛速度;通過設置兩組不同的占空比形成兩個車輪的轉速差達到改變行駛方向的目的。

  在對比了100Hz,1KHz,10KHz的PWM輸出驅動電機的情況發現:當頻率為100 Hz時,電機運行呈間隙轉動狀態;當頻率為10KHz時,電機運行不平穩;當頻率為1KHz時,不同占空比下電機運行都很平穩,轉速、轉向改變迅速。圖3是由示波器產生的PWM頻率為1KHz,占空比為30%,電機反轉情況下的調制波形。

  3  結束語

  本文中所設PWM的輸出頻率為1KHZ,所用直流電機是120轉/分鐘,額定電壓為12V(電機外不加其他感性負載)。本課題最終實現的是基于ARM的嵌入式智能小車系統,而直流電機的PWM調速控制是其中一個重要的子系統。實驗證明,Samsung公司的16/32位RISC處理器S3C44B0X對調制PWM實現方便,可編程,電機轉速、轉向的改變迅速,無停頓,可以很好的為智能小車服務。
此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲破处大片| 亚洲一区二区在线免费观看| 欧美日韩中文字幕在线视频| 老司机精品视频网站| 欧美在线视频在线播放完整版免费观看 | 亚洲成人资源| 亚洲二区三区四区| 久久国产精品高清| 久久经典综合| 亚洲国产精品久久精品怡红院| 欧美专区第一页| 久久精品道一区二区三区| 欧美自拍偷拍| 亚洲国产精品传媒在线观看| 亚洲大片免费看| 亚洲激情二区| 日韩一级免费观看| 一区二区三区 在线观看视| 一区二区三区.www| 亚洲欧美国产高清| 午夜免费在线观看精品视频| 欧美一区二区在线免费观看 | 欧美黄在线观看| 欧美日韩国产一级片| 欧美视频网站| 国产嫩草影院久久久久| 国产一区视频在线看| 激情综合色综合久久综合| 在线观看日韩| 亚洲日韩欧美一区二区在线| 日韩亚洲欧美成人| 亚洲欧美日韩视频二区| 欧美尤物一区| 亚洲精品乱码久久久久久日本蜜臀| 99国产一区二区三精品乱码| 亚洲欧美日韩成人| 久久久久久综合| 欧美高清在线一区二区| 欧美日韩在线一二三| 国产日韩欧美一区二区三区在线观看 | 欧美视频在线观看免费| 亚洲激情一区| 国产伦精品一区二区三区视频孕妇| 国产精品一香蕉国产线看观看| 国产区亚洲区欧美区| 激情六月婷婷综合| 亚洲九九精品| 亚洲综合色视频| 亚洲国产另类久久精品| 中文亚洲免费| 欧美自拍偷拍午夜视频| 久久综合久久综合这里只有精品| 欧美紧缚bdsm在线视频| 国产精品欧美风情| 黄色小说综合网站| 日韩视频免费观看| 欧美一区二区三区喷汁尤物| 亚洲精品影院| 欧美中文在线观看国产| 欧美岛国激情| 国产精品嫩草影院av蜜臀| 樱桃成人精品视频在线播放| 日韩一区二区精品葵司在线| 欧美有码在线视频| 亚洲视频 欧洲视频| 久久久久亚洲综合| 欧美日韩一区二区三区四区在线观看| 国产老女人精品毛片久久| 亚洲国产cao| 亚洲一区日韩在线| 亚洲精品一品区二品区三品区| 亚洲欧美综合| 欧美黄色aaaa| 国模大胆一区二区三区| 一区二区三区三区在线| 亚洲激情视频网| 性久久久久久| 欧美激情第9页| 国产色综合久久| av72成人在线| 亚洲精品国产精品国产自| 欧美亚洲日本一区| 欧美精品午夜| 黄色工厂这里只有精品| 亚洲女性喷水在线观看一区| 夜夜嗨网站十八久久| 欧美 亚欧 日韩视频在线| 国产精品一区二区久久久久| 亚洲伦理在线| 亚洲精品视频免费在线观看| 久久久精品国产99久久精品芒果| 国产精品国产成人国产三级| 亚洲精品少妇网址| 最近中文字幕mv在线一区二区三区四区 | 久久久www| 国产精品天天摸av网| 日韩一级大片在线| 99国产精品久久久久久久久久| 久久久久久久综合日本| 国产精品视频99| 中文一区二区| 亚洲深夜影院| 欧美日韩视频在线一区二区观看视频| 亚洲国产成人精品女人久久久 | 亚洲影院免费观看| 亚洲欧美资源在线| 国产精品久久一卡二卡| 在线视频日本亚洲性| 中文亚洲欧美| 欧美日韩亚洲精品内裤| 亚洲精品视频一区二区三区| 99精品国产福利在线观看免费 | 国产一区视频在线观看免费| 欧美亚洲色图校园春色| 欧美一区二区三区电影在线观看| 国产精品美女久久久久久免费| 99re66热这里只有精品3直播| 99re成人精品视频| 欧美日韩人人澡狠狠躁视频| 99国产精品99久久久久久粉嫩| 一区二区三区四区五区视频 | 亚洲午夜电影网| 在线性视频日韩欧美| 欧美日韩免费观看一区三区 | 欧美日韩三区四区| 在线综合亚洲| 欧美一级久久| 国产亚洲欧美一区二区三区| 久久精品成人欧美大片古装| 久久久一区二区| 一区二区在线看| 日韩视频免费观看| 欧美三区不卡| 亚洲先锋成人| 久久精品一区| 一区国产精品| 一本久道久久综合狠狠爱| 欧美午夜剧场| 香蕉久久夜色精品国产| 久久青草欧美一区二区三区| 亚洲高清免费在线| 在线中文字幕日韩| 国产精品日韩专区| 久久精品人人做人人综合| 牛夜精品久久久久久久99黑人| 亚洲精品日韩在线观看| 亚洲欧美日韩国产综合在线 | 欧美日韩国产麻豆| 亚洲一区二区三区欧美| 久久精品二区亚洲w码| 亚洲国产精品成人| 亚洲性夜色噜噜噜7777| 国产视频久久久久| 亚洲人成人一区二区在线观看| 欧美日韩hd| 午夜精品999| 欧美激情第五页| 亚洲主播在线观看| 另类图片综合电影| 99精品视频免费观看视频| 欧美在线观看网址综合| 亚洲国产日韩欧美在线99| 亚洲一区在线播放| 国产亚洲福利一区| 日韩视频三区| 国产亚洲精品aa午夜观看| 亚洲精品综合久久中文字幕| 国产精品免费小视频| 91久久在线播放| 国产精品一区二区男女羞羞无遮挡| 91久久久久久国产精品| 国产精品视频免费在线观看| 亚洲啪啪91| 国产精品夜色7777狼人 | 久久久女女女女999久久| 亚洲人成人77777线观看| 欧美在线综合| 亚洲精品在线一区二区| 久久精品亚洲热| 99热这里只有成人精品国产| 久久人人看视频| 一区二区三区视频在线| 欧美不卡视频一区| 亚洲欧洲99久久| 欧美日韩免费看| 亚洲欧洲偷拍精品| 国产婷婷精品| 亚洲欧美三级在线| 亚洲精选中文字幕| 蜜桃av噜噜一区| 欧美亚洲视频在线观看| 欧美亚洲成人免费| 日韩视频精品在线观看| 一色屋精品视频在线看| 欧美一级欧美一级在线播放| 一本久久青青| 欧美mv日韩mv国产网站app| 午夜日韩视频| 国产精品揄拍一区二区| 中国女人久久久|