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

基于風河VxWorks6.9 系統的自動駕駛系統研究

2021-06-26 08:26:06付建寬李金亮劉蘇楠孫嘉城
科學技術創新 2021年16期
關鍵詞:設備系統

付建寬 李金亮 劉蘇楠 孫嘉城 張 佳

(中汽數據(天津)有限公司,天津300000)

1 概述

VxWorks是美國風河公司的一款實時可裁剪的嵌入式操作系統,可以運行在X86、ARM、PowerPC、MIPS等多種架構的CPU上;VxWorks系統性能強悍、可靠性極高;支持搶占式多任務的調度、TCP/IP網絡協議棧、文件系統、設備管理、2D圖形顯示等;跨平臺的開發環境WindRiverWorksbench十分友好,通過交叉編譯生成bootrom啟動引導文件和VxWorks內核鏡像文件,使用WDB方便開發和調試RTP應用程序和Kernel程序。

2 系統設計

本設計中計算單元采用研華ARK-3500工控機,9-34V寬壓直流電源輸入,搭載的是Intel酷睿三代ivy bridge架構的CPU,QM77芯片組顯示支持DVI+HDMI+DisplayPort接口,支持PCI擴展,還有6路USB口和8路DB9串口可供連接外設,計算單元上運行VxWorks6.9 的操作系統。我們的毫米波雷達、超聲波雷達、車輛底盤、Mobileye都是通過CAN總線和計算單元進行連接的,組合慣導通過RS232異步串口接入計算單元,激光雷達通過以太網接入計算單元,計算單元通過連接工業4G路由器和云服務器進行交互。系統的硬件組成框圖如圖1所示。

圖1 系統組成框圖

3 軟件設計

3.1 啟動程序及BSP設計

VxWorks系統在6.9 版本以前多采用基于bootrom加載內核或者DOS引導裝載bootrom再加載內核的方法,在6.9 版本及以后大多采用grub或syslinux或UEFI來啟動引導,本文采用的是syslinux啟動裝載,首先需要格式化啟動盤為FAT32的主分區文件系統,并激活盤符,然后解壓syslinux.zip文件到啟動盤,使用管理員權限啟動cmd,在命令行內輸入以下命令:

X:>syslinux-m-a-d-f-iX:

X代表的是啟動盤所在的盤符,比方說啟動盤是F盤則X替換為F,最后我們的系統最終是運行在工控機內置硬盤上的,需要將硬盤取下使用SATA轉USB線連接PC來制作啟動盤。啟動盤制作好后開機引導界面如圖2所示。

圖2 syslinux開機引導界面

BSP是板級支持包的英文縮寫,主要完成系統中斷向量初始化、時鐘初始化、內存映射、外設初始化等功能[1]。我們在通用的target/config/itl_x86路徑下的BSP基礎上修改,首先復制該文件夾并重命名,然后在config.h文件中添加如下宏定義:

根據工控機內存大小調整SYSTEM_RAM_SIZE宏,程序中如果不跑特別消耗內存的任務也可以使用缺省值。

3.2 驅動程序設計

3.2.1 以太網網卡驅動

ARK3500工控機的LAN1是Intel 82579LM以太網控制器,LAN2是Intel I-210IT以太網控制器,通過使能INCLUDE_GEI825XX_VXB_END、INCLUDE_MII_BUS、INCLUDE_GENERICPHY三個宏,系統會調用函數muxDevLoad()即可完成網絡初始化。

3.2.2 SATA固態硬盤驅動

針對SATA電子盤的驅動,需要配置AHCI相關的組件,AHCI驅動為vxBus架構,在VxWorks shell下用vxBusShow能看到設備成功注冊,因為支持DMA讀寫,因此速度非常快[2]。需要注意的是BIOS的配置要從IDE模式改為AHCI模式。如果需要對VxWorks下的磁盤分區重命名為ata0a,可以在usrAppInit.c中添加如下代碼來實現。

3.2.3 USB鍵鼠驅動

在文本模式下,VxWorks6.9 默認支持USB鍵鼠,在圖形模式下,需要添加對UHCI、OHCI、EHCI的USB協議棧的支持。

3.2.4 串口驅動

工控機提供了8路串口,其中4路固定232串口,4路可變232/422/485串口,我們因為只有慣導使用了一路232串口,因此只需要初始化1路232串口,在config.h文件中對CONSOLE_TTY、CONSOLE_BAUD_RATE兩個宏進行設置,另外BSP中串口配置一定要和BIOS的IO ADDRESS、INT LEVEL保持一致[3]。在命令行在輸入devs回顯的/tyCo/0就是我們要使用的串口設備。

3.2.5 芯片組QM77集成顯卡驅動

VxWorks支持集顯驅動,可以編譯內核態的WindML-5.3 顯示庫,進而使用tilcon或者QT進行圖形界面程序的開發。

3.2.6 PCI-CAN驅動

由于工控機不帶CAN總線,因此我們外接了一塊基于SJA1000控制器PCI的CAN接口卡設備,自行編寫設備驅動,步驟如下:

3.2.6.1 調用pciFindDevice()函數,根據vender id和device id查找設備的總線號、設備號、功能號。

3.2.6.2 調用pciConfigInLong()函數;獲取配置空間、內存空間、I/O空間的地址(偏移地址)。

3.2.6.3 根據獲取偏移地址最低位,判斷訪問方式是I/O訪問,還是內存訪問。IO訪問為1,內存訪問為0。

3.2.6.4 往bar的地址寫-1,然后重新讀取,獲取bar空間大小。

3.2.6.5 根據獲取的bar2地址,配置板卡寄存器。

3.2.6.6 調用pciConfigInByte()函數獲取中斷號。

3.2.6.7 調用pciIntConnect()連接中斷向量,中斷號加0x20,調用sysIntEnablePIC()使能中斷。

3.2.6.8 編寫open、read、write、ioctl、close等設備訪問函數。

3.2.6.9 使用iosDrvInstall()函數創建驅動,將驅動程序的入口寫入到驅動程序表中。

3.2.6.10 使用iosDevAdd()函數創建設備描述符結構,將設備添加到設備列表中[4]。

3.3 傳感器解析程序設計

3.3.1 組合慣導定位感知

組合慣導內部集成的工業級MEMS陀螺儀、加速度計和雙頻GNSS接收機,RTK狀態良好穩定,配置RS232串口波特率230400Kbps,解析輸出穩定連續的位置、方向、速度、姿態以及授時信息。

3.3.2 激光雷達感知

激光雷達完成三維測量相關數據輸出,包括激光測距值、回波的反射率值、水平旋轉角度值等,通過UDP發送到指定IP和端口上,給融合模塊、決策模塊使用。

3.3.3 毫米波雷達感知

首先將車輛的速度、半徑曲率等信息發送給毫米波雷達進行初始化,輸出64個障礙物的三個維度的距離、角度和速度信息,還可以輸出目標分組、車道變換檢測等信息,CAN總線設備之間通信波特率為500Kbps。

3.4 自動駕駛程序設計

3.4.1 高精地圖制作

我們使用配置有GPS、IMU、Mobieye、Camera傳感器的采集車來獲取集原始數據,使用慣導采集GPS數據、使用Mobieye采集GPS數據到左右車道的距離,用來推算左右車道點的數據、使用相機采集車前信息,用于回放時用來提取車道點進行參考,采集后的數據為文本格式,使用自研工具進行車道擬合,區域之間采用貝塞爾曲線相連,加入了車道實線虛線信息等道路標志。

3.4.2 路徑規劃

使用自研工具設置目標點,進行全局路徑規劃,暫時不支持動態切換;而局部路徑規劃實時變化,可至少規劃60m的距離,考慮路徑、場景、交規等,生成原始路徑,包含路徑長度,左右邊界等,同時規劃目標速度,規避動態障礙物。

3.4.3 決策控制實現

采用PID橫縱向控制算法,通過計算障礙物信息、橫向位置和角度誤差、縱向位置和速度誤差,自適應動力學模型算法,參數自動整定;添加速度補償,在車輛轉彎半徑允許條件下,盡量小誤差范圍內動作;預測碰撞時間,計算出油門、剎車、方向盤角度值,實現自動駕駛自動循跡,自主避障、自主泊車等功能[5];工控機通過CAN總線直接下發命令給車輛底盤,決策時間不大于20ms。

3.5 系統運行實況

將需要編譯進kernel的用戶任務寫進usrAppInit.c文件中,驅動程序編譯成模塊動態加載,經測試,實車運行穩定可靠,響應迅速及時,系統運行實況畫面如圖3所示。

圖3 系統運行實況畫面

4 總結與展望

本設計僅做了適配研究,很多算法工具庫在VxWorks下并沒有,需要單獨移植,例如opencv這個開源的計算機視覺和機器學習庫,github倉庫上只有對VxWorks7.0 的支持,VxWorks6.9下需要自行開發,我們只能暫時使用Mobileye這種通過CAN總線輸出對目標的識別結果的智能相機。功能安全是智能網聯汽車的一項重要要求,風河的VxWorks系統雖然生態上相對Linux要差很多,但是在實時性、安全性上有極大的優勢,相信VxWorks系統在自動駕駛領域會有不錯的前景。

猜你喜歡
設備系統
諧響應分析在設備減振中的應用
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
半沸制皂系統(下)
基于VB6.0+Access2010開發的設備管理信息系統
基于MPU6050簡單控制設備
電子制作(2018年11期)2018-08-04 03:26:08
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
500kV輸變電設備運行維護探討
工業設計(2016年12期)2016-04-16 02:52:00
主站蜘蛛池模板: 爆乳熟妇一区二区三区| 激情影院内射美女| 国产高清精品在线91| 国产成人a毛片在线| 欧美日韩另类在线| 久久永久视频| 国产在线麻豆波多野结衣| 热思思久久免费视频| 亚洲日韩AV无码精品| 在线观看国产小视频| 亚洲第一在线播放| 国产乱子伦手机在线| 无码中文字幕精品推荐| 久久亚洲中文字幕精品一区 | 99久久亚洲综合精品TS| 黄色成年视频| 99精品国产高清一区二区| 成人免费黄色小视频| 亚瑟天堂久久一区二区影院| 国产亚洲精品yxsp| 国产精品无码AV片在线观看播放| 久久精品这里只有精99品| 亚洲国产精品无码久久一线| 国内熟女少妇一线天| 国产白浆视频| 欧美不卡视频在线观看| 无码内射在线| 国产成人精品男人的天堂下载| 在线观看国产精美视频| 欧美三级日韩三级| 黄色在线不卡| 一区二区三区在线不卡免费| 日韩欧美国产精品| 啪啪国产视频| 伊人久久青草青青综合| 天堂成人av| 高清乱码精品福利在线视频| 一级做a爰片久久毛片毛片| 久久久久九九精品影院| 亚洲女同欧美在线| 欧美国产日韩另类| 成人亚洲国产| 全部免费毛片免费播放| 五月天丁香婷婷综合久久| 欧美激情网址| 国产欧美一区二区三区视频在线观看| 亚洲最大福利网站| 99九九成人免费视频精品| 国产午夜福利在线小视频| 无码中文字幕精品推荐| 欧美日韩久久综合| 天天综合网亚洲网站| 久热99这里只有精品视频6| 极品av一区二区| 国精品91人妻无码一区二区三区| 国产精品手机视频一区二区| 911亚洲精品| 亚洲国产精品VA在线看黑人| 91丝袜在线观看| 91在线高清视频| 欧美国产日韩在线| 久久久久久午夜精品| 欧美日韩北条麻妃一区二区| 久久福利网| 国产真实二区一区在线亚洲| 在线观看免费黄色网址| 午夜性爽视频男人的天堂| 国产尤物视频在线| 国产精品第一区| a网站在线观看| 欧美h在线观看| 久久久久久久蜜桃| 久久永久精品免费视频| 国产精品视频3p| 国产精品自在拍首页视频8| 成人免费网站久久久| 国产99视频免费精品是看6| 日韩亚洲综合在线| 女人18毛片久久| 亚洲天堂成人| 一级爱做片免费观看久久| 国产微拍一区|