999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于LM3S微處理器的機械手無線控制系統

2016-01-29 03:52:01王坤張樂年
機械制造與自動化 2015年4期

王坤,張樂年

(南京航空航天大學 機電學院,江蘇 南京 210016)

基于LM3S微處理器的機械手無線控制系統

王坤,張樂年

(南京航空航天大學 機電學院,江蘇 南京 210016)

摘要:介紹了一種使用LM3S811微處理器與SM63無線模塊搭建的手持式無線遙控器,該遙控器正面設置多個實體按鍵,并對不同按鍵定義了不同的功能。使用該遙控器配合一套機械手控制系統,實現了機械手的遠程無線遙控。

關鍵詞:無線遙控;控制系統;LM3S811微處理器

Wireless Control Manipulator System Based on Microprocessor

WANG Kun, ZHANG Lenian

(Nanjing University of Aeronautics and Astronautics, Nanjing 210016, China)

Abstract:This paper introduces a wireless remote controller equipped with LM3S811 microprocessor and SM63 wireless module, which is equipped with many physical keys in the front. The functions of the various keys are defined. This controller can be used with a manipulator control system to control the whole system.

Keywords:wireless remote control; control system; LM3S811 microprocessor

0引言

無線遙控器是利用無線信號對遠程各種機構進行控制的遙控設備。這些信號被遠程接收設備接收后,可以通過指令驅動各種相應的電子設備去完成各種相應的操作,如閉合電路、移動手柄、開啟電動機等,之后再通過機械系統完成所需要的操作。作為一種與紅外遙控器相補充的遙控器種類,在車庫門,電動門、道閘遙控控制,防盜報警器,工業控制以及無線智能家居等領域得到了廣泛的應用。

1無線遙控器硬件設計

無線遙控器控制系統結構如圖1所示。系統包括兩個部分——控制端和執行端。控制端包括手控盒和無線發送模塊,手控盒上設計了多個實體按鍵,用來給執行端發送不同的動作指令。執行端包括單片機控制核心、無線接收模塊、電動機和機械手,響應控制端指令執行不同的動作。

圖1 控制系統結構圖

控制端采用LM3S811+SM63的架構,當按下或釋放不同按鍵時,LM3S811內部程序判斷按鍵值并將相應指令通過串口發送至SM63無線模塊,無線模塊與發出無線信號,執行端連接SM63模塊的單片機等控制元件接收到信號后,解析協議,將動作指令轉換成電動機控制信號發送給電動機,由電動機驅動機械手在相應方向上的動作。此系統可以應用于多種工業控制系統中,如工業機器人控制,閥門控制,設備參數設定等場合,具有鮮明的實用價值。

1.1LM3S系列芯片簡介

LM3S811 ARM微控制器是Luminary公司推出的一款結構簡單、性能出眾且帶有ARM Codex-M3處理器內核的32位微控制器,它擁有與8位和16位器件相同的價格,卻能為用戶提供32位器件的性能。Codex-M3處理器是首個基于ARMv7M架構,主要針對汽車車身系統、工業控制系統以及無線網絡等對成本和功耗極端敏感的嵌入式應用領域,是以實現高系統性能為目的而專門設計的ARM內核。

其電源電壓為3.3 V,最高時鐘頻率50 MHz,64 kHz的單周期FLASH;3個32位通用定時器,可分成6個16位定時器使用;一組同步串行接口(SSI),2個異步串行接口(UART);4通道模數轉換器(ADC),1組模擬比較器和I2C接口;3個脈寬調制信號(PWM)模塊,32個通用輸入輸出管腳(GPIO)及硬件看門狗等。

SM63低電壓型無線模塊是一種半雙工無線通信模塊,可實現無線信號的點對點,點對多傳輸,具有體積小、低成本、低功耗、發送數據量大、傳輸距離遠的優點。

遙控器中,將LM3S811的UART0串口分配給SM63無線模塊,二者間連接電路如圖2所示。

圖2 LM3S811與SM63模塊連接圖

1.2按鍵電路設計

按鍵部分采用實體按鍵,硬件電路設計,如圖3所示。

圖3 按鍵電路設計圖

KEY0-KEY6引腳與LM3S811輸入輸出口的PB0-PB6相連,當按鍵未按下時,由于有3.3V上拉電源,PB口輸入為高電平,當某一按鍵按下時,對應PB口輸入變為低電平并觸發中斷,當有中斷發生時,主函數使用查詢方式獲得鍵值,發出相應命令碼。其中,PB口中斷觸發方式有上升沿、下降沿或雙邊沿觸發,如果改為雙邊沿觸發,即可實現按下和彈起對應不同動作,如電動機的啟動和停止。

2程序設計

控制程序在Keil μVision4環境中使用C語言編寫,便于維護和移植。另外,使用J-LINK連接到JTAG下載口,可對遙控器進行在線調試。

函數流程如下:

圖4 遙控器程序流程圖

按鍵按下判斷時使用延遲檢測方法:即當檢測到按鍵狀態變化時,延遲一定時間再次讀取按鍵狀態,若確實變化了,再開始響應,否則視為誤操作,不動作。此方法可以改善因按鍵抖動引起的誤操作。當按鍵按下后,啟動計時,若在時間到達1.5s之前松開按鍵,則視為短按,此時遙控器向單片機發送短距命令,單片機控制電動機走完該圈數時自動停止;若在時間到達1.5s后,按鍵仍未松開,則視為長按,此時遙控器向單片機發送長距命令,單片機控制電動機持續轉動,當按鍵松開時,遙控器發送停止命令,電動機停止。

中斷檢測及通信部分程序如下:

//中斷檢測

void GPIO_Port_B_ISR( void )// B口中斷服務函數

{

uint32 ulStatus;

uint8 stateKey;

ulStatus = GPIOPinIntStatus( GPIO_PORTB_BASE, TRUE );// 讀取中斷狀態

GPIOPinIntClear( GPIO_PORTB_BASE, ulStatus );// 清除中斷狀態

if( ulStatus & KEY0 )

{

stateKey = Generate_Input_Read(0);// 讀取KEY0鍵狀態

if( !stateKey )// KEY0鍵按下

{

SysCtlDelay( 2000 * ( SysMainOSC / 300000 ));//延時20ms再檢測

stateKey = Generate_Input_Read(0);

if( !stateKey )// KEY0鍵按下

{

KeyDownNum = 0;//為定時器指示按鍵號

//do something

TimerEnable( TIMER1_BASE, TIMER_A );//開始檢測按鍵時間

}

}

else// KEY0鍵松開

{

}

}

else if( ulStatus & KEY1 ) // KEY1鍵按下

{

…// 同KEY0鍵

}

…// 同上

}

//通信部分:串口初始化和發送字符:

uint8 Uart0Init( uint32 ulBaudRate, uint8 ucPrio )

{

if( ulBaudRate > 115200 )// 波特率> 115200,返回

return(FALSE);

SysCtlPeripheralEnable( SYSCTL_PERIPH_UART0 );// 使能串口0外圍設備

SysCtlPeripheralEnable( SYSCTL_PERIPH_GPIOA );// 使能GPIOA

GPIOPinTypeUART(GPIO_PORTA_BASE,

GPIO_PIN_0 | GPIO_PIN_1); // 設置PA0,PA1為RXD0,TXD0

//配置串口參數:串口地址,波特率,數據長度為8位,1位停止位,無校驗

UARTConfigSet(UART0_BASE,

ulBaudRate,

UART_CONFIG_WLEN_8|

UART_CONFIG_STOP_ONE|

UART_CONFIG_PAR_NONE);

UARTFIFOLevelSet( UART0_BASE, // 設置收發FIFO中斷觸發深度

UART_FIFO_TX2_8, // 發送FIFO為2/8深度(4B)

UART_FIFO_RX2_8 ); // 接收FIFO為6/8深度(4B)

IntPrioritySet( INT_UART0, ucPrio ); // 設置中斷優先級

// IntEnable( INT_UART0 ); // 使能串口0系統中斷

UARTIntEnable(UART0_BASE,

UART_INT_RX |

UART_INT_RT);// 使能串口0接收中斷和接收超時中斷

UARTEnable(UART0_BASE);// 使能串口0發送和接收

return(TRUE);

}

void SendToUart0( uint8*pucBuffer,uint16 usByte )// 發送數據

{

while( usByte )

{

if( UARTSpaceAvail(UART0_BASE) )// 確定發送FIFO中是否還有任何可用的空間

{

UARTCharNonBlockingPut( UART0_BASE, *pucBuffer++ );// 發送一個字符到指定端口

usByte--;

}

}

}

3控制協議

通信協議是通信雙方的一種約定,約定包括對數據格式、同步方式、傳送速度、傳送步驟、檢糾錯方式以及控制字符定義等問題做出的統一規定,通信雙方必須共同遵守。無線通信協議的設計應遵循簡單、有效、可靠的原則。

本系統中遙控器控制指令根據機械手系統需要設計為17位byte類型字符,除包頭包尾外,其余各位用來指定單片機、指定電動機以及設置電動機的運行方向、速度、圈數等,具體各個位代表意義如表1所示。

表1 通信協議各位定義

4結語

使用LM3S811微控制器與SM63無線通信模塊相結合,實現了通過實體按鍵對遠端機械手的無線控制,實際現場使用效果很好,靈活方便,并且節省了部分成本。此系統可以通過改變遙控器端的控制程序、機械手端的控制芯片和控制方式以及二者之間的通信協議,推廣到各種需要無線遙控的工業控制場合。

參考文獻:

[1] 黃志偉. 32位ARM微控制器系統設計與實踐—基于Luminary Micro LM3S系列[M]. 北京:北京航空航天大學出版社,2010.

[2] Luminary Micro LM3S811數據手冊[S]. Luminary Micro公司.

[3]來清民. ARM Cortex-M3嵌入式系統設計和典型實例—基于LM3S811[M]. 北京:北京航空航天大學出版社,2013.

[4] Theodore S.Rappaport.無線通信原理與應用[M]. 北京:電子工業出版社,2012.

[5]10mV/50mV-ISM低電壓無線收發模塊[S]. 上海:上海上志電子信息技術有限公司.

收稿日期:2014-12-18

中圖分類號:TP241

文獻標志碼:B

文章編號:1671-5276(2015)04-0161-03

作者簡介:王坤(1988-),男,江蘇徐州人,碩士研究生,研究方向為機電一體化。

主站蜘蛛池模板: 午夜日本永久乱码免费播放片| 亚洲中文字幕无码mv| 国产微拍一区二区三区四区| 青青操国产视频| 午夜精品久久久久久久99热下载 | 国产亚洲成AⅤ人片在线观看| 欧美精品二区| 亚洲精品第一在线观看视频| 亚洲第七页| 久久伊伊香蕉综合精品| 99在线视频网站| 日韩欧美国产综合| 久久婷婷综合色一区二区| 国产导航在线| 日本日韩欧美| 国产精品视频白浆免费视频| av手机版在线播放| 小说 亚洲 无码 精品| av在线5g无码天天| 国内老司机精品视频在线播出| 国产chinese男男gay视频网| 成人国产精品网站在线看| 538精品在线观看| 久久国语对白| 久草网视频在线| 亚洲综合香蕉| 欧美成在线视频| 日本午夜网站| 日韩欧美91| 午夜少妇精品视频小电影| 国产尤物视频在线| 激情影院内射美女| 国产麻豆永久视频| 免费国产好深啊好涨好硬视频| 国产成人精品在线1区| 亚洲a级在线观看| 找国产毛片看| 制服无码网站| 久久伊人操| 久久成人免费| 亚洲精品在线影院| 四虎永久在线精品国产免费 | 女同国产精品一区二区| 丰满的熟女一区二区三区l| 成年女人a毛片免费视频| 最新日韩AV网址在线观看| a在线亚洲男人的天堂试看| 黄色三级网站免费| 天天综合网亚洲网站| 欧美亚洲欧美| 婷婷色丁香综合激情| 国模沟沟一区二区三区| 在线毛片网站| A级毛片无码久久精品免费| 99视频只有精品| 毛片在线看网站| 国产一区三区二区中文在线| 欧美va亚洲va香蕉在线| 成人av专区精品无码国产 | 国产精品午夜福利麻豆| 999国产精品永久免费视频精品久久| 日韩AV手机在线观看蜜芽| 国内黄色精品| 国产麻豆va精品视频| 色综合天天综合中文网| 久久这里只有精品66| 欧美亚洲第一页| 亚洲av无码牛牛影视在线二区| 亚洲看片网| 亚洲国产成熟视频在线多多| 日韩免费毛片视频| a级毛片网| 国产精品综合色区在线观看| 亚洲视频无码| 国产清纯在线一区二区WWW| a毛片免费观看| 国产一区二区免费播放| 成色7777精品在线| 亚洲综合天堂网| 免费在线播放毛片| av一区二区三区在线观看| 欧美日本激情|