一种工业照相机远程升级的方法及照相机的制作方法

文档序号:6400186阅读:306来源:国知局
专利名称:一种工业照相机远程升级的方法及照相机的制作方法
技术领域
本发明属于工业照相机领域,特别涉及一种通过网络对工业照相机的固件进行远程升级的方法提供一种这样可以通过远程升级的工业照相机。
背景技术
目前,有些照相机为了升级方便,在照相机内设置了FPGA芯片完成对相机的控制,如果相机需要升级增加新的功能,可以通过对FPGA芯片进行重写完成,这样,当相机需要升级时,可以通过对FPGA芯片进行重新烧制,写入新的软件升级包,在硬件不变的情况下实现照相机的升级,可以节省很多照相机的成本。目前,在相机中存放了两部分代码一应用程序代码和出厂配置代码,对照相机进行升级就是对其中的应用程序代码进行更新,出厂配置部分则不能更新。对照相机固件进行升级时,需要将照相机拆开,通过焊接几根通信电缆,利用计算机对照相机内安装这些固件的flash存储器进行重写。而目前,工业照相机一般都需要安装在固定的地方,当工业照相机安装完成后再拆卸下将是十分麻烦事,这样,对固件进行升级将比较麻烦。

发明内容
为了克服目前在工业照相机升级过程中需要拆下安装在工作岗位的照相机进行固件升级所带来的麻烦,本发明提供一种利用千兆以太网实现对工业电传机远程升级的方法和远程升级的照相机。本发明为了完成其技术目的所采用的技术方案是:一种工业照相机远程升级的方法,工业计算机通过千兆以太网与工业照相机连接,利用千兆以太网将升级数据包发往工业照相机,工业照相机的工作由出厂配置代码控制,在正确接收升级包以后,对flash内的固件进行完全替换。进一步的,上述的工业照相机远程升级的方法中:
在工业计算机一端包括如下步骤:
Al、确认待升级的工业照相机退出应用程序,进入出厂配置代码控制状态;
A2、将工业照相机的固件升级程序打包分别通过千兆以太网发送到工业照相机的步骤,该步骤中每发送一个数据包需要收到工业照相机返回的正确接收前一个数据包的回复,否则,重发该数据包,直到所有的数据包成功发送到工业照相机;
在工业照相机一端进行以下步骤;
B1、引导出厂配置代码,并向工业计算机发送进入出厂配置代码控制状态信号;
B2、接收由工业计算机发送的固件升级程序的数据包,每接收到一个数据包,检测该数据包是否正确,若正确,则向工业计算机发送接收数据包正确的信号,直到正确接收所有的数据包;
B3、将接收到的所有的数据包写入flash内。进一步的,上述的工业照相机远程升级的方法中:所述的数据包包括14个字节的802.3MAC包头、3个字节的802.2LLC、5个字节的802.2SNAP包头、38 1492字节的数据以及4个字节的CRC校验码;
所述的数据部分具体格式如下:
flag + type + legth + addr + data + sum
其中:
Flag标示该包为系统配置数据升级包;
Type标示数据升级包的具体类型:
0x00 —记录描述信息;
0x01,0x02,0x03 —记录存储的数据,这三者的区别在于地址(addr)的长度不同,0x01 为 2byte,0x02 为 3byte,以及 0x03 为 4byte ;
0x07, 0x08, 0x09 —确定程序的开始地址;
这三者的区别也在于地址(addr)的长度不同,0x09为2byte,0x08为3byte,以及0x07为 4byte ;
length标示数据的长度; addr标示数据写入的起始地址。data标示升级程序数据;
Sum标示校验和,由<addr>和〈data〉的数据累加然后每bit取反获得。本发明还提供一种可远程升级的照相机,包括对照相机工作进行控制的FPGA芯片和处理器,存储有FPGA的配置程序需要外置的非易失性存储器;所述的非易失性存储器至少包括存储有出厂配置的默认配置程序分区和用户配置程序分区;在所述的FPGA芯片中还包括千兆以太网控制器和非易失性存储器读写控制器。进一步的,上述的可远程升级的照相机中:所述的非易失性存储器包括32个扇区,其中,O - 7扇区存储出厂配置程序,8 - 21扇区存储用户程序,22 - 31扇区存储照相机的其它信息。本发明公开了一种通过远程控制可以对照相机进行固件升级的方法和可以通过远程进行固件升级的照相机,可以克服目前通过编程器或专用下载电缆烧制对照相机进行升级,灵活性较差,升级时必须拆开系统,重新连接下载电缆或使用编程器对存储器件进行烧制的缺点。下面通过结合具体实施例和附图对本发明进行进一步的说明。


附图1是本发明实施例的工业照相机结构框图。附图2是本发明实施例数据包结构图。附图3是本发明实施例工业控制计算机对照相机进行远程升级的流程图。附图4是本发明实施例中照相机升级过程中照相机一端的流程图。
具体实施例方式如图1所示 ,本实施例是一种可以远程升级固件的工业照相机,包括对照相机工作进行控制的FPGA芯片和处理器,存储有FPGA的配置程序需要外置的非易失性存储器,也就是flash ;FPGA芯片中还包括千兆以太网控制器和flash读写控制器。flash包括32个扇区,其中,O - 7扇区存储出厂配置程序,8 - 21扇区存储用户程序,22 - 31扇区存储照相机的其它信息。照相机中,处理器CPU是相机中完成固件升级的重要部件,其通过以太网接口接收来自应用程序的升级数据,然后对数据进行校验、解码,将正确的数据通过flashcontroller写入FLASH,并且应答应用程序,升级完成后重新配置FPGA,最终完成系统的远程升级。这里,FPGA远程系统升级是指从开发地点通过网络或其它数据通路将升级数据发送给系统,系统存储这些数据,然后用这些数据重新配置FPGA器件完成系统升级。FPGA远程系统升级系统主要包括三个部分:嵌入式处理器(CPU)、Flash器件、应用程序。整体如下:
应用程序读取FPGA的升级文件,按照规定的格式通过以太网发送到相机,相机对收到的数据进行校验,如果数据正确,则将数据写入FLASH中,否则通知应用程序重新发送数据,确保写入FLASH中数据的准确。本实施例中采用Altera的FPGA
在Altera的产品中,根据FPGA在整个配置过程的角色,可以分为3类:FPGA主动方式(AS) ;FPGA被动方式(PS) JTAG方式。在AS配置方式下,由板上的FPGA主动输出控制和同步信号给Altera专用的一种串行配置芯片(如EPCS等),在配置芯片收到命令后,就把配置芯片数据发到FPGA,完成配置过程。注意:该方式只能与Altera提供的主动串行配置芯片配合使用(即EPCS系列)。在PS配置下,由系统的其他设备发起并控制配置过程。这些设备包括Altera的配置芯片(EPC系列),或者是微控制器(如单片机),CPLD等。FPGA完全处于被动地位,只是简单的输出一些状态信号配合配置过程。在FPGA被动方式中,包括被动串行(PS),快速被动并行(FPP),被动并行同步(PPS),被动并行异步(PPA)等。这里最常用的,具有代表性的是PS模式,该模式是所有Altera FPGA都支持的,一般最常见的是用Altera的配置芯片EPC系列来完成配置过程。在做PS配置时,FPGA配置数据从存储器(一般是EPC系列)里读出,在时钟的上升沿到来时将数据写入FPGA。JTAG模式是IEEE 1149.1边界扫描测试的标准接口,主要用于芯片的测试等功能。Altera FPGA基本上都支持由JTAG命令来配置FPGA的方式,而且JTAG的配置方式比其他任何一种配置方式都高级。上面进行升级,都需要从远程将升级包正确接收,因此,正确接收升级包的数据就是本实施例广品和方法的关键。具体的,FLASH为相机的配置程序的存放空间,其容量为16Mb,一共分为了 32个扇区,本系统根据实际需求将其分为了三个部分,分别用于存放不同的数据,具体分区如表I所示:
其中出厂配置用于保存出厂时的默认配置程序,用户不能修改,当更新失败时可以用于紧急恢复系统配置。用户配置则保存最终的配置程序,用户可以通过远程来对系统进行升级。其他信息部分用于保存产品的其他信息如初始化设置等。表I
权利要求
1.一种工业照相机远程升级的方法,其特征在于:工业计算机通过千兆以太网与工业照相机连接,利用千兆以太网将升级数据包发往工业照相机,工业照相机的工作由出厂配置代码控制,在正确接收升级包以后,对flash内的固件进行完全替换。
2.根据权利要求1所述的工业照相机远程升级的方法,其特征在于: 在工业计算机一端包括如下步骤: Al、确认待升级的工业照相机退出应用程序,进入出厂配置代码控制状态; A2、将工业照相机的固件升级程序打包分别通过千兆以太网发送到工业照相机的步骤,该步骤中每发送一个数据包需要收到工业照相机返回的正确接收前一个数据包的回复,否则,重发该数据包,直到所有的数据包成功发送到工业照相机; 在工业照相机一端进行以下步骤; B1、引导出厂配置代码,并向工业计算机发送进入出厂配置代码控制状态信号; B2、接收由工业计算机发送的固件升级程序的数据包,每接收到一个数据包,检测该数据包是否正确,若正确,则向工业计算机发送接收数据包正确的信号,直到正确接收所有的数据包; B3、将接收到的所有的数据包拷贝到flash内。
3.根据权利要求2所述的工业照相机远程升级的方法,其特征在于:所述的数据包包括14个字节的802.3MAC包头、3个字节的802.2LLC、5个字节的802.2SNAP包头、38 1492字节的数据以及4个字节的CRC校验码; 所述的数据部 分具体格式如下:flag + type + legth + addr + data + sum 其中: Flag标示该包为系统配置数据升级包; Type标示数据升级包的具体类型: 0x00 —记录描述信息; 0x01,0x02,0x03 —记录存储的数据,这三者的区别在于地址(addr)的长度不同,0x01 为 2byte,0x02 为 3byte,以及 0x03 为 4byte ;0x07, 0x08, 0x09 —确定程序的开始地址; 这三者的区别也在于地址(addr)的长度不同,0x09为2byte,0x08为3byte,以及0x07为 4byte ; length标示数据的长度; addr标示数据写入的起始地址; data标示升级程序数据; Sum标示校验和,由<addr>和〈data〉的数据累加然后每bit取反获得。
4.一种可远程升级的照相机,包括对照相机工作进行控制的FPGA芯片和处理器,存储有FPGA的配置程序需要外置的非易失性存储器;其特征在于:所述的非易失性存储器至少包括存储有出厂配置的默认配置程序分区和用户配置程序分区;在所述的FPGA芯片中还包括千兆以太网控制器和非易失性存储器读写控制器。
5.根据权利要求4所述的可远程升级的照相机,其特征在于:所述的非易失性存储器包括32个扇区,其中,O — 7扇区存储出厂配置程序,8 — 21扇区存储用户程序,22 — 31扇区存储照相机的其它信息。`
全文摘要
本发明提供了一种工业照相机远程升级的方法和照相机,工业计算机通过千兆以太网与工业照相机连接,利用千兆以太网将升级数据包发往工业照相机,工业照相机的工作由出厂配置代码控制,在正确接收升级包以后,对flash内的固件进行完全替换。本发明公开了一种通过远程控制可以对照相机进行固件升级的方法和可以通过远程进行固件升级的照相机,可以克服目前通过编程器或专用下载电缆烧写对照相机进行升级,灵活性较差,升级时必须拆开系统,重新连接下载电缆或使用编程器对存储器件进行烧写的缺点。
文档编号G06F9/445GK103106095SQ20131007642
公开日2013年5月15日 申请日期2013年3月11日 优先权日2013年3月11日
发明者王艳, 王智华, 王爱兵, 郭宏国, 张克宇, 李立 申请人:深圳华用科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1