新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于C164單片機(jī)的自動(dòng)攤鋪機(jī)通信模塊的設(shè)計(jì)

基于C164單片機(jī)的自動(dòng)攤鋪機(jī)通信模塊的設(shè)計(jì)

作者: 時(shí)間:2009-09-16 來源:網(wǎng)絡(luò) 收藏

  1.引言

  隨著高等級(jí)公路的不斷發(fā)展,對(duì)于高等級(jí)公路的路面基層、底基層施工質(zhì)量要求也日益嚴(yán)格,采用常規(guī)的施工方法已難以滿足其表面幾何尺寸和平整度的要求,因此采用攤鋪機(jī)攤鋪路面基層、底基層施工勢(shì)在必行。但公路工程任務(wù)中,質(zhì)量要求高,時(shí)間緊,操作條件惡劣,迫切要求改善操作環(huán)境,降低勞動(dòng)強(qiáng)度,提高攤鋪機(jī)自動(dòng)化程度。工程機(jī)械一體化和機(jī)器人化是工程機(jī)械未來的發(fā)展方向。融合電子技術(shù)、計(jì)算機(jī)技術(shù)、控制技術(shù)、通信技術(shù)等,實(shí)現(xiàn)機(jī)械產(chǎn)品的自動(dòng)化和智能化,為機(jī)電一體化技術(shù)開辟了發(fā)展的廣闊天地。該瀝青混凝土的研制、開發(fā),將提高道路攤鋪工程的自動(dòng)化程度和智能化水平,改善道路工程的操作環(huán)境和勞動(dòng)條件,降低勞動(dòng)強(qiáng)度,提高攤鋪機(jī)產(chǎn)品的檔次,成為國內(nèi)領(lǐng)先、國際先進(jìn)的國產(chǎn)化產(chǎn)品,對(duì)促進(jìn)我國公路交通事業(yè)的發(fā)展,具有重要意義。

  2.?dāng)備仚C(jī)工作原理

  瀝青混凝土道路的攤鋪過程是:在工作時(shí),由裝載機(jī)從瀝青混凝土攪拌站將混合攪拌好的高溫鋪路材料料快速運(yùn)輸?shù)綌備仚C(jī)前方,將原料倒入攤鋪機(jī)的料斗中。料斗的下方是左、右兩條輸料帶,輸料帶將原料一直帶到車體后方,原料從輸料帶上落下。分料架是兩個(gè)螺旋桿,它們通過旋轉(zhuǎn)將堆積在中間的原料向兩邊分開,基本均勻分布在路面上。車體的最后方是熨平板,熨平板用高強(qiáng)壓和振搗器的高頻率將原料壓實(shí),待攤鋪機(jī)走過,原料冷卻后,路面形成。

  3.通信模塊的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)

通信模塊的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)

圖1 通信模塊的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)

  系統(tǒng)既龐大、又復(fù)雜。包括車體的方向、速度控制,輸分料控制,大臂、熨平板、找平控制,發(fā)動(dòng)機(jī)的起、??刂埔约案鞣N狀態(tài)參數(shù)的測(cè)量、顯示和故障報(bào)警。為了提高系統(tǒng)的可靠性,采用了集散型計(jì)算機(jī)體系結(jié)構(gòu),實(shí)現(xiàn)了集中管理以及功能和危險(xiǎn)的分散。所有這些子控制系統(tǒng)都在不同的單片機(jī)上完成,而這些子系統(tǒng)之間的參數(shù)傳輸則由主交互機(jī)進(jìn)行協(xié)調(diào)。顯而易見,攤鋪機(jī)能否在工作環(huán)境相當(dāng)惡劣的條件下正常、可靠、穩(wěn)定地工作,很大程度上取決于各個(gè)單片機(jī)于系統(tǒng)能否進(jìn)行可靠、穩(wěn)定的通信。根據(jù)項(xiàng)目的要求,對(duì)人機(jī)交互系統(tǒng)和測(cè)控機(jī)系統(tǒng)的各種輸入/輸出量的關(guān)系進(jìn)行了深入細(xì)致的研究和測(cè)量,制定了如圖l所示的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。

  在圖1中,主交互機(jī)與左交互機(jī)、右交互機(jī)、車體行駛測(cè)控機(jī)、找平輸分料測(cè)控機(jī)利用進(jìn)行通信;而主交互機(jī)與移動(dòng)電話則利用RS232C進(jìn)行串行通信。

  4.通信模板的硬件設(shè)計(jì)

  本系統(tǒng)中采用億恒公司的16位CMOS單片機(jī)系列的C164作為主控制器。億恒C164是單片機(jī)是一款非常優(yōu)秀的單片機(jī),特別是它的16位單片機(jī),高性能CPU 結(jié)合功能豐富的外設(shè),每秒可執(zhí)行1250萬條指令,在CPU時(shí)鐘頻率20MHz時(shí)具有下面的性能特點(diǎn):

  (1)帶有4級(jí)流水線高性能16位CPU

  80ns最小指令循環(huán)時(shí)間,大多數(shù)指令僅需1個(gè)循環(huán),即兩個(gè)CPU循環(huán);16*16位乘法需400ns(20個(gè)CPU循環(huán)),32位除16位需800ns(40個(gè)CPU循環(huán))。處理能力達(dá)到10MIPS。

  (2)集成在片存儲(chǔ)器

  64KB在片可編程FLASH;2KB內(nèi)部RAM,用于變量存儲(chǔ)器池、系統(tǒng)堆棧和代碼;2KB在片高速RAM,用于變量、用戶堆棧和代碼;4KB在片數(shù)據(jù)EEPROM,用于non-volatile變量。

  (3)外部總線接口

  獨(dú)立或復(fù)用總線配置;段分配和片選信號(hào)產(chǎn)生;8位或16位數(shù)據(jù)總線。

  (4)16個(gè)優(yōu)先級(jí)中斷系統(tǒng)

  可達(dá)33個(gè)中斷節(jié)點(diǎn)帶有獨(dú)立的中斷矢量;在內(nèi)部程序執(zhí)行時(shí),240ns/400ns中斷等待時(shí)間;快速外部中斷。

  (5)智能在片外設(shè)子系統(tǒng)

  8通道10位A/D轉(zhuǎn)換器,帶有可編程轉(zhuǎn)換時(shí)間(最小為7.76us;5個(gè)定時(shí)/計(jì)數(shù)器;同步/異步串行通道;帶有15個(gè)信息體的CAN摸量;可編程時(shí)間間隔的看門狗定時(shí)器;實(shí)時(shí)時(shí)鐘;用于系統(tǒng)初始化的程序引導(dǎo)裝載器。

  (6)59個(gè)I/O引腳

  輸入模式具有三態(tài);具有位尋址功能。

  通信模塊的硬件電路如圖2所示。

通信模塊的硬件電路圖

圖2 通信模塊的硬件電路圖

  通信模塊帶有CANBUS、RS232C各一路,可獨(dú)立進(jìn)行通信和RS232C串行通信。RS232C通信硬件電路由C164片內(nèi)異步串行口、光耦、MAX232A和傳輸線構(gòu)成。CAN通信由C164片內(nèi)CAN控制器、光耦、CAN收發(fā)器PAC82C250和傳輸線構(gòu)成。

  CAN收發(fā)器PAC82C250與C164CI的接口均帶有光電隔離,隔離前后采用兩套電源:

  (1)系統(tǒng)電源:+Vs(+5V), Gs ;

  (2)機(jī)器電源:+Vm(+5V), Gm。

  5.RS232C通信軟件設(shè)計(jì)

  5.1 C164CI的異步串口

  C164CI的異步串行口ASC0提供了與其它系統(tǒng)串行通信端口,它的特點(diǎn)是:自帶波特率發(fā)生器的異步串口;異步模式,最大625Kbaud傳送速率;全雙工位;可編程特點(diǎn)(1或2停止位,7、8或9數(shù)據(jù)位);在數(shù)據(jù)發(fā)送時(shí)產(chǎn)生校驗(yàn)或喚醒位;奇或偶校驗(yàn)位;錯(cuò)誤檢測(cè)等。

  5.2 串行口通信編程

  串行口主要用于移動(dòng)電話和主交互機(jī)之間進(jìn)行通信。串行通信的實(shí)現(xiàn)主要是通過對(duì)串口控制寄存器進(jìn)行配置實(shí)現(xiàn)初始化。下面是這一過程的實(shí)現(xiàn)步驟:

  1. 串口控制寄存器初始化;

  2. 定義波特率;

  3. 定義中斷;

  4. 定義引腳的特殊功能;

  5. 系統(tǒng)啟動(dòng)。

  下面為實(shí)現(xiàn)串口的通信程序:

  #include

  unsigned int a;

  interrupt(0x2B) void S0RINT(void) //接收中斷服務(wù)子程序

  {

  a=S0RBUF; //將接收數(shù)據(jù)保存

  }

  void putchar(unsigned char tdata) //串行發(fā)送程序

  {

  while(!S0TBIR){;} //等待發(fā)送緩沖區(qū)清空

  S0TBIR=0; //復(fù)位發(fā)送緩沖區(qū)中斷請(qǐng)求標(biāo)志

  S0TBUF=tdata; //裝載發(fā)送緩沖寄存器

  }

  void ASC_vInit(void) //串行通信初始化

  {

  S0CON=0x8011; //定義控制寄存器:SOR=1;SOREM=1;串行方式1

  S0BG=0x0040; //定義波特率9 600Bd

  S0RIC=0x0062; //定義接收中斷控制寄存器

  S0TBIC=0x0080; //定義發(fā)送緩沖控制寄存器

  P3 |=0x0400; //定義P3.10引腳為輸出鎖存(TXD0)

  DP3 |=0x0400; //定義P3.10方向控制(TXD0為輸出)

  Dp3 =0xF7FF; //定義P3.11方向控制(RXD0為輸入)

  IEN=1; //開中斷

  }

  void main(void)

  {

  ………………;

  ASC_vInit(); //串口初始化

  putchar(‘…..’); //串行發(fā)送

  ………………;

  }


上一頁 1 2 下一頁

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉