导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→ARM9工控板在远程监控中的应用之六——利用COM组件远程抓

* 66002: ARM9工控板在远程监控中的应用之六——利用COM组件远程抓拍图像

   emtronixuser 
emtronixuser发表的帖子 

 ARM9工控板在远程监控中的应用之六——利用COM组件远程抓拍图像
文章来源:

   英创ARM9工控主板功能齐全、体积小巧、性能稳定、超低价格的嵌入式主板产品。主板硬件完全按工业级标准设计,CPU采用了32位工业级ARM9芯片,PCB板经精心优化设计,除提供全面、高效的功能之外,还较好地控制了模块功耗。英创ARM9工控主板,为了适应远程监控的需要,添加了视频采集功能。在WinCE平台下,由于安装摄像头驱动不能像在PC上安装驱动那么方便,英创公司在WinCE内核中预先安装了特定摄像头的驱动。我们在测试的过程中选用的是海天地公司生产的QQ电脑眼—V8。但是,英创提供的摄像头驱动支持主芯片为ZC0301Plus(30万像素)、 ZC0301PL(30万像素)、 ZC0301PLH(130万像素)的摄像头。由于摄像头为USB接口,那么选好摄像头后,直接插在英创公司的USB HOST口,就可以使用英创公司提供的对摄像头操作的API函数,通过这些API函数可以很方便的完成启动视频、拍摄图片等操作。 

在工业现场,常常需要在复杂环境下监视现场的工作状态,远程视频监控适应了这一需要,它主要应用于无人值守、复杂环境及其恶劣环境的监视。远程视频监控系统应用大大的降低了人力资源的使用,同时对于那些不需要经常巡视的区域保持了较好的及时监控,即使是一些人力无法长期工作的恶劣地点也可以通过远程视频监控系统实现。远程视频监控系统的出现弥补了人力不足以及人力不能及的缺点,使得工作人员的工作环境变得舒适而其高效。英创适应了这一市场需求,推出了远程视频监控的解决方案。通过WebServer技术和COM组件技术,客户使用浏览器就能方便地实现视频监控,本文给出了详细的实现步骤。 

一、设计COM组件 

新建EVC工程,添加接口、添加SNAP接口函数等COM组件技术的设计方法请参考《ARM9工控板在远程监控中的应用》系列文章,详细程序请参看光盘源码。下面只对Snap接口函数进行解释。 

//函数功能:拍照 
//入口参数:V1为照片文件存储位置,为绝对路径加文件名。 
//出口参数:无 
//返 回 值:TRUE:打开数据库成功;FALSE:打开数据库失败 
STDMETHODIMP CemCamera::Snap(VARIANT v1, long *pVal) 

CComVariant v_1( v1 ); 
v_1.ChangeType( VT_BSTR ); // 将VARIANT转换为字符串 
CString csFileName(v_1.bstrVal); 
capInitCamera(); //初始化摄像头 
capSetVideoFormat(g_uIndex, fmt, VIDEO_SIZE_SIF); //设置视频格式和 
capStartCamera(g_uIndex); //启动摄像头 
Sleep(150); 
capGetLastJpeg(g_uIndex, buffer, bufferLen); //拍照并保持在buffer中 
if(!MyFile.Open(csFileName,Cfile::modeCreate|Cfile::modeWrite,NULL)) 
//如果不存在,就创建文件 如果文件存在,就打开文件 
MyFile.Write (buffer,length); //写文件 
LocalFree(buffer); //释放Buffer 
capCloseCamera(); //关闭摄像头 

二、在浏览器查看拍摄的照片 

在网页中,主要提供了自动抓拍、手动抓拍、停止抓拍等按钮,其中,自动抓拍还要设置抓拍时间间隔。下面是主要的ASP代码。 

[]

[]

[]



发表时间:2009年10月12日13:54:34

  
回复该帖

本主题共有 1 帖,分页:>>>>>该主题的所有内容[1]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

[上一篇帖子]:对嵌入式感兴趣应该去看看这些免费的视频对嵌入式感兴趣的为什么不去看看这些免费的入门视频呢 尚
[下一篇帖子]:基于DS18B20测温系统解决方案文章来源:http://www.emtronix.com/arti