文献标识码:A
DOI:10.16157/j.issn.0258-7998.2017.01.024
中文引用格式:季晓迪,罗利文. 基于OpenWrt的医用无线内镜装置系统设计[J].电子技术应用,2017,43(1):92-94,98.
英文引用格式:Ji Xiaodi,Luo Liwen. Wireless medical endoscope system design based on OpenWrt[J].Application of Electronic Technique,2017,43(1):92-94,98.
0 引言
微创外科(Minimally Invasive Surgery,MIS)是现代外科发展的重要标志[1],而内镜技术的应用使微创外科面临的在小切口条件下所显露的手术视野不佳、手术量化程度不高、止血困难等问题迎刃而解,微创外科得以深化和拓展。但传统内镜如胸腔镜、关节镜[2]等功能单一,设备庞大,构件数量多且连接复杂,消毒处理不方便。因此,本文设计了一种构成轻便、适应症宽、消毒灭菌方便的无线医用内镜装置。
1 系统总体设计
装置总体结构上包括便携式操作手柄、无线充电底座和摄像探头3部分,其外观结构如图1所示。
操作手柄是一套结构紧凑的嵌入式图像采集和处理装置,它由可充电电池供电,充电方式采用无线充电;操作手柄一端是USB摄像头,手柄内部无线通信电路通过WiFi将摄像探头采集的图像传输到独立的显示装置上。无线充电和无线图像信号传输的设计架构保证操作手柄不会有连接电缆或电源线,也没有裸露的金属端子,易到达手术级别的消毒要求。
2 系统硬件设计
硬件系统主要包括:无线SoC模块、外围接口电路、锂电池及无线充电电路等。硬件结构原理图如图2所示。
2.1 SoC模块
本设计采用集成了WiFi功能的MIPS架构的SoC方案,系统频率达400 MHz,板载64 MB SDRAM,8 MB NOR Flash,对外引出一个USB2.0接口、多个GPIO接口、一个高速UART串口及WiFi天线接口,采用IEEE802.11n标准协议,无线传输速率高达150 Mb/s。系统框图如图3所示。
非易失性存储器NOR Flash主要用于存储引导程序U-boot、OpenWrt系统内核和根文件系统,NOR Flash支持随机访问,数据掉电不会丢失,作为启动程序的存储介质。
同步动态随机存储器(SDRAM)是整个系统的内存,当系统启动时,CPU首先从复位地址读取启动代码,系统启动后,程序代码调入SDRAM中运行。系统及用户堆栈、运行数据等存储于SDRAM中。
2.2 USB摄像头
本系统使用UVC摄像头,包括CMOS图像传感器、视频处理电路和LED补光3部分,主要执行视频的采集和处理功能。CMOS图像传感器获取图像信息,经过A/D转换后变为数字信号,由图像处理单元进行处理,最后通过USB接口传输数据。
UVC(USB Video Class)是为USB视频捕获设备定义的协议标准,在OpenWrt内核中包含UVC摄像头驱动,无需外部安装驱动程序。
目前图像传感器主要有两类,一类是电荷耦合器件(Change Coupled Device,CCD),另一类是互补金属氧化物开云棋牌官网在线客服器件(Complementary Metal-Oxide Semiconductor,CMOS)。与CCD图像传感器相比,CMOS图像传感器具有高分辨率、高动态范围、高帧速、低功耗等优点。因此本设计采用了CMOS图像传感器。
LED驱动芯片采用SGL8022W芯片,是一款用于LED灯光调节及开关控制的单通道电容式触摸芯片。与传统的机械按键相比,电容式触摸按键更加美观、耐用、寿命长。其工作原理为:按键(即焊盘)到地GND构成一个分布式电容CP,是一个固定不变的微小值。电路板上方表面会覆盖一层塑料或玻璃,当人体手指触摸按键时,手指与焊盘构成一个大小为CF的耦合电容。触摸前电容值为CP,触摸后电容值为CP+CF,总感应电容值增加,芯片检测到感应电容值发生改变后作出响应[3]。电路设计如图4所示。
2.3 无线充电电路
本系统所设计的无线充电装置基于平面线圈之间的电磁感应原理,由提供电能的基站和消耗电能的移动设备组成。功率传输的方向总是从基站到移动设备,如图5所示。
在发射器的功率传送单元,逆变器将直流电转换成交流电来驱动谐振电路。电流传感器监测流过一次线圈的电流。通信控制单元接收并解码来自接收器的消息,执行相关的功率控制算法和协议,并且通过改变交流电的频率来控制功率传输。发射器采用了德州仪器公司的BQ500511和BQ50002配套使用的无线充电发射器解决方案。
在接收器的功率拾取单元,由二次线圈、串联和并联电容组成双谐振电路,用于提高功率传输效率并且允许一个谐振检测方法。全波整流电路既为接收器的通信控制单元供电,又为接收器的输出供电。通信控制单元执行相关的功率控制算法和协议,驱动通信调制器,控制输出切断开关,监视一些功率拾取单元和负载的传感电路。接收器设计采用了德州仪器公司开发的BQ51050b集成芯片。该器件整个功率级均采用低阻性N通道金属氧化物开云棋牌官网在线客服场效应晶体管(N-MOSFET)技术,具有高效率与低功率耗散等优点。
3 系统软件设计
本设计以OpenWrt为操作系统,OpenWrt是一个基于Linux的开源路由firmware固件,提供了一个完全开放的文件系统控制方式和软件包管理机制,是一个可以运行在路由器上的小型Linux系统[4]。与VxWorks及WinCE相比,OpenWrt因源码公开并且遵循GPL协议而更具优势。μC/OS-II、FreeRTOS及embOS等实时操作系统多用于小ARM单片机上运行,OpenWrt相比于它们,有大量的应用程序可用,并且具有优秀的网络功能,尤其是其针对USB摄像头视频采集的应用程序编程提供了一系列的接口函数,故在本设计中使用OpenWrt系统最为合适。
3.1 MJPG-streamer移植
MJPG-streamer是一款开源的轻量级视频服务器软件,可实现从Linux UVC兼容摄像头采集图像,并通过IP网络将采集的图像以流的形式传输到浏览器[5]。安装命令如下:
opkg install kmod-video-core
#安装摄像头内核模块,UVC驱动依赖包
opkg install kmod-video-videobuf2 #UVC驱动依赖包
opkg install kmod-video-uvc #安装UVC驱动
opkg install libpthread #MJPG-streamer依赖包
opkg install libjpeg #MJPG-streamer依赖包
opkg install mjpg-streamer #MJPG-streamer功能安装包
MJPG-streamer的工作流程[6]如图6所示。
3.2 配置摄像头参数并获取视频
MJPG-streamer服务安装完成后,修改配置文件“/etc/config/mjpg-streamer”:
config mjpg-streamer ′core′
option enabled ′1′ #1为开启摄像头功能,0为不开启
option input ′uvc′ #输入格式
option output ′http′ #输出方式
option resolution ′1280x720′ #分辨率
option fps ′30′ #帧率
option www ′/www/webcam′ #访问目录
option port ′8080′ #访问端口8080
option username ′***′ #设置访问用户名
option password ′***′ #设置访问密码
启动MJPG-streamer服务:/etc/init.d/mjpg-streamer start。
3.3 MJPG-streamer自启动
OpenWrt的启动脚本放在/etc/init.d/目录下,在/etc/rc.d/目录下有/etc/init.d/目录下脚本的链接文件。系统启动时会按顺序启动/etc/rc.d/目录下的脚本链接,对应执行/etc/init.d/目录下的启动脚本。脚本链接的命名格式为S+数字+脚本名,数字代表启动顺序,创建mjpg-streamer脚本的链接文件,名为S95mjpg-streamer。执行命令:ln–s/etc/init.d/mjpg-streamer /etc/rc.d/S95mjpg-strea-mer,即可实现mjpg-streamer开机启动。
3.4 按键拍照snapshot
设置GPIO为输入模式,读取按键信号。在OpenWrt系统源文件mach-tl-wr720n-v3.c中添加GPIO和按键的对应关系:
#define TL_WR720N_GPIO_BTN_SW1 14
static struct gpio_keys_button tl_wr720n_gpio_keys[] __initdata = {
{
.desc = "sw1",
.type = EV_KEY,
.code = BTN_1,
.debounce_interval=TL_WR720N_KEYS_DEBOUNCE_INTERVAL,
.gpio = TL_WR720N_GPIO_BTN_SW1,
.active_low = 0,
},
};
当GPIO读取到按键信号后,执行拍照、暂存图片和上传图片等命令:
my_current_time=′date+%Y_%m_%d_%H_%M_%S′
#获取系统时间并存入变量中
wget "http://192.168.3.131:8080/?action=snapshot" -O/
tmp/$my_current_time.jpg
#wget命令,获取拍照图片并暂存在/tmp/目录中
wput /tmp/$my_current_time.jpg
ftp://admin:admin@192.168.3.106/cam/$my_current_time.jpg
#wput命令,将拍照图片上传至本地ftp
3.5 上位机软件
上位机软件采用VLC开源播放器。VLC是属于Video LAN开源项目组织中的一款全开源的流媒体服务器和多媒体播放器[7]。打开VLC软件,选择“媒体”→“打开网络串流”,输入网络URL:http://192.168.3.131:8080/?action=stream。
点击播放即可实时查看由USB摄像头获取的视频信息。播放界面还包括录制视频、snapshot截屏、逐帧观看等功能。同时软件还具有视频处理功能,可调节对比度、饱和度、伽玛值等。
4 结论
本文设计了一种基于OpenWrt的医用无线内镜装置系统,通过对硬件电路的设计及软件的编写,并经过测试证明可以实现系统功能。该装置构成轻便、适应症宽、消毒灭菌方便,达到设计要求,因此可以应用于微创外科领域,其内镜技术的研究也有一定的参考价值。
参考文献
[1] 王宇.微创外科的兴起、发展与未来[J].中华肝胆外科杂志,2006(3):145-148.
[2] 赵辉.椎间盘镜和关节镜[C].中医、中西医结合护理学术年会暨中西医骨伤护理观摩交流会论文集,2008.
[3] 陈斌.电容式触摸按键设计与专用芯片应用[J].电子世界,2014(16):281-281.
[4] DUTT S,HABIBI D,AHMAD I.A low cost Atheros system-on-Chip and OpenWrt based testbed for 802.11 WLAN research[C].TENCON 2012-2012 IEEE Region 10 Conference.IEEE,2012:1-4.
[5] 陈书益,黄永慧.开源视频服务器软件MJPG-streamer的研究和应用[J].电子设计工程,2012,20(5):172-176.
[6] 陈恒鑫,林威,张钦宇.基于Mjpg-streamer的移动视频监控系统设计[J].计算机测量与控制,2014,22(11):3597-3599.
[7] 李宗辰,朱秀昌.基于VLC的Android多路视频监控系统[J].现代电子技术,2013,36(24):63-66.
作者信息:
季晓迪,罗利文
(上海交通大学 电子信息与电气工程学院,上海200240)