CN104038316B - 空间相机高可靠高时效异步串行通讯方法 - Google Patents
空间相机高可靠高时效异步串行通讯方法 Download PDFInfo
- Publication number
- CN104038316B CN104038316B CN201410250505.3A CN201410250505A CN104038316B CN 104038316 B CN104038316 B CN 104038316B CN 201410250505 A CN201410250505 A CN 201410250505A CN 104038316 B CN104038316 B CN 104038316B
- Authority
- CN
- China
- Prior art keywords
- communication
- data
- frame
- asynchronous serial
- serial communication
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Abstract
空间相机高可靠高时效异步串行通讯方法,涉及空间电子学通讯技术领域,解决现有空间相机异步串行通讯设计可靠性和时效性等问题,采用可编程逻辑软件实现通讯数据多次采样、通讯超时和校验和判定以及自动重发功能的通讯系统设计方法;采用可编程逻辑软件实现异步通讯数据组织,按照异步串行通讯时序发送及接收数据,提高了异步串行通讯的时效性。采用可编程逻辑软件实现字节超时判定、帧超时判定以及校验和正误判定,并实现自动重发功能,减少了与CPU软件之间频繁数据传递,进一步提高了异步串行通讯的时效性。采用三判二原则对通讯数据进行多次采样,提高异步串行通讯的可靠性。
Description
技术领域
本发明涉及空间电子学通讯技术领域,具体涉及空间相机高可靠高时效异步串行通讯方法。
背景技术
空间相机运行环境恶劣,其通讯链路极易受到空间电磁辐射或空间粒子等因素的影响导致通讯异常,因此设计高可靠通讯系统十分必要的。
异步串行通讯是空间相机通讯系统设计中常用的通讯方法,参与通讯的分系统通过约定的波特率发送及接收通讯数据,参与通讯的分系统通常为主从关系,主分系统将包含帧同步头、命令、参数及校验和的通讯帧发出后,等待从分系统返回的包含帧同步头、参数及校验和的通讯帧。校验和判定和超时判定能够增加通讯可靠性,当从分系统判定主分系统发送的命令通讯帧校验和错误时,不进行返回通讯帧的响应,而主分系统在限定时间内未接收到返回通讯帧时,则认为通讯超时,重新发送命令通讯帧,由此实现超时重发功能。
常见的空间相机异步串行通讯设计方法包括两种:
第一种方法采用异步串行通讯专用芯片实现通讯数据的发送和接收,通讯数据由CPU根据通讯协议组织写入,串行通讯专用芯片仅能对通讯数据每一位进行单次采样,可靠性较低,并且通讯超时及校验和判定均有CPU完成,需要频繁数据交换,通讯时效性差。
第二种方法采用可编程逻辑替代通讯专用芯片,即CPU将通讯帧数据写入可编程逻辑,但无需控制发送/接收过程,并且可编程逻辑软件能够实现对通讯数据每一位的多次采样,提高了通讯可靠性,但是通讯超时和校验和判定功能仍由CPU控制,时效性问题仍未解决。
发明内容
本发明为了解决现有空间相机异步串行通讯设计可靠性和时效性等问题,提供一种空间相机高可靠高时效异步串行通讯方法。
空间相机高可靠高时效异步串行通讯方法,包括CPU和FPGA,所述FPGA包括帧数据发送模块、帧数据接收模块、位发送模块和位接收模块,该方法由以下步骤实现:
步骤一、帧数据发送模块接收CPU的控制命令和参数,并补充帧同步头和校验和数据,然后按字节发送至位发送模块;
步骤二、所述位发送模块对接收的每个字节添加起始位和停止位,并按异步串行通讯时序发送至分系统;
步骤三、位接收模块对接收的通讯数据进行采样,并将接收的数据组织成字节数据发送至帧数据接收模块;
步骤四、所述帧数据接收模块判断相邻字节的接收时间是否超过单个字节接收时间的n倍,如果是,则启动帧数据发送模块重新发送数据;如果否,则执行步骤五;
步骤五、帧数据接收模块判断接收帧同步头是否正确,如果是,则执行步骤六,如果否,则停止接收,所述FPGA不向CPU发送返回参数,结束通讯;
步骤六、帧数据接收模块判断发送完成至接收帧同步头的时间是否超过一帧通讯数据接收时间的n倍,如果是,则启动帧数据发送模块重新发送数据,如果否,则执行步骤七;
步骤七、帧数据接收模块判断返回参数中发送校验和标志是否正确,若错误则通知帧数据发送模块启动重新发送,若正确则继续步骤八;
步骤八、帧数据接收模块判断校验和是否正确,若错误则FPGA不向CPU发送返回参数,若正确则FPGA向CPU发送返回参数,并结束本次通讯。
本发明的有益效果:
一、本发明提出了一种采用可编程逻辑软件实现通讯数据多次采样、通讯超时和校验和判定以及自动重发功能的通讯系统设计方法;采用可编程逻辑软件实现异步通讯数据组织,按照异步串行通讯时序发送及接收数据,提高了异步串行通讯的时效性。
二、采用可编程逻辑软件实现字节超时判定、帧超时判定以及校验和正误判定,并实现自动重发功能,减少了与CPU软件之间频繁数据传递,进一步提高了异步串行通讯的时效性。
三、本发明采用三判二原则对通讯数据进行多次采样,提高异步串行通讯的可靠性。
附图说明
图1为本发明所述的空间相机高可靠高时效异步串行通讯方法的原理图;
图2为本发明所述的空间相机高可靠高时效异步串行通讯方法中异步串行通讯数据的时序图;
图3为本发明所述的空间相机高可靠高时效异步串行通讯方法中发送通讯帧数据格式示意图;
图4为本发明所述的空间相机高可靠高时效异步串行通讯方法中返回通讯帧数据格式示意图。
具体实施方式
具体实施方式一、结合图1和图2说明本实施方式,空间相机高可靠高时效异步串行通讯方法,采用可编程逻辑软件实现通讯数据的组织、发送及接收,具备对字节超时、通讯帧超时及校验和正误的判定,能够实现自动重发功能,从而提高空间相机异步串行通讯的时效性。在通讯数据接收时,采用三判二原则进行通讯数据多次采样,提高了空间异步串行通讯的可靠性;所述的可编程逻辑软件FPGA包括帧数据发送模块、帧数据接收模块、位发送模块和位接收模块,具体的过程为:
步骤一、帧数据发送模块接收CPU软件的控制命令及参数,并组织通讯帧数据以及补充校验和数据;可编程逻辑软件FPGA与CPU软件约定,先写入控制参数,后写入控制命令,控制命令直接启动通讯帧数据发送。
步骤二:将通讯帧数据按字节发送至位发送模块,将每个字节按照附图2所示的方式,添加起始位和停止位,根据异步通讯时序发送数据。
步骤三:位接收模块等待分系统返回的通讯数据,按照附图2时序进行位采样。判定接收到起始位后,对每一位数据的采样均采用三判二的原则,即对每一位数据进行三次采样,判断两次或两次以上采样结果相同时,采用该结果作为这一位数据的采样值,从而增加通讯数据接收的可靠性。
步骤四:将接收到的字节数据在帧数据接收模块中组织,判断帧同步头是否正确,若帧同步头错误则停止接收。
步骤五:计算接收到的异步串行通讯数据相邻两字节之间的时间间隔,若大于某特定时间则判定字节接收超时,启动通讯数据重发功能。
步骤六:计算从发送完毕到接收到正确的帧同步头的时间间隔,若大于某特定时间则判定通讯帧接收超时,启动通讯数据重发功能。
步骤七、帧数据接收模块判断返回参数中发送校验和标志是否正确,若错误则通知帧数据发送模块启动重新发送,若正确则继续步骤八;
步骤八、帧数据接收模块判断校验和是否正确,若错误则FPGA不向CPU发送返回参数,若正确则FPGA向CPU发送返回参数,并结束本次通讯。
具体实施方式二、结合图1至图4说明本实施方式,本实施方式为具体实施方式一所述的空间相机高可靠高时效异步串行通讯方法的实施例:
实施例中,发送通讯帧数据格式结合图3,帧同步头为7E7EH,控制命令包括三种,D1H为开始摄像命令,E2H为停止摄像命令,C3H为返回参数命令,控制参数包含高压参数和阈值参数,最后为1字节校验和,校验和由控制命令、高压参数和阈值参数按字节相加获得。返回通讯帧数据格式结合图4,帧同步头为B4B4H,控制命令、高压参数和阈值参数与发送通讯帧相同,工程状态参数表明分系统当前工作状态,校验和计算方法与发送通讯帧中校验和的计算方法相同,异步串行通讯波特率设定为62500bps,则单个字节接收时间为160us,一帧通讯帧数据接收时间为1.6ms,超时判定时间倍数n的取值范围为2~10,设定n等于10,则接收字节的超时时间设定为1.6ms,接收帧超时时间设定为16ms。
具体实施步骤为:
步骤A:CPU软件向可编程逻辑软件先写入高压参数和阈值参数,再写入控制命令,如开始摄像命令。可编程逻辑软件FPGA补充帧同步头及校验和数据,将通讯帧数据传递至位发送模块;
步骤B:位发送模块将每字节数据补充起始位和停止位后向分系统发送出通讯数据,结合图2。
步骤C:所述位接收模块按位采样返回通讯帧数据,组织成字节数据后发送至帧数据接收模块。
步骤D:计算帧数据接收模块中每接收两相邻字节之间的时间间隔,若大于1.6ms,则认为字节超时,停止接收并启动帧数据发送模块进行通讯帧重发。否则,执行步骤E;
步骤E:所述帧数据接收模块判断接收到的返回通讯帧的帧同步头是否为B4B4H,若正确则进行步骤F,若错误则终止接收。
步骤F:计算从发送完毕到正确接收返回通讯帧的帧同步头B4B4H的时间间隔,若时间间隔大于16ms,则认为通讯帧超时,停止接收并启动帧数据发送模块进行通讯帧重发。
步骤G:返回通讯帧中的工程状态参数包含所接收到的发送通讯帧校验和是否正确的标志,若该标志表明发送通讯帧校验和错误,则启动帧数据发送模块进行重发。
步骤H:判断返回通讯帧中校验和数据是否正确,若校验和正确则更新返回参数,若错误则不向CPU软件更新返回参数。
显然,上述实施例仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。
Claims (3)
1.空间相机高可靠高时效异步串行通讯方法,包括CPU和FPGA,所述FPGA包括帧数据发送模块、帧数据接收模块、位发送模块和位接收模块,其特征是,该方法由以下步骤实现:
步骤一、帧数据发送模块接收CPU的控制命令和参数,并补充帧同步头和校验和数据,然后按字节发送至位发送模块;
步骤二、所述位发送模块对接收的每个字节添加起始位和停止位,并按异步串行通讯时序发送至分系统;
步骤三、位接收模块对接收的通讯数据进行采样,并将接收的数据组织成字节数据发送至帧数据接收模块;
步骤四、所述帧数据接收模块判断相邻字节的接收时间是否超过单个字节接收时间的n倍,如果是,则启动帧数据发送模块重新发送数据;如果否,则执行步骤五;
步骤五、帧数据接收模块判断接收帧同步头是否正确,如果是,则执行步骤六,如果否,则停止接收,所述FPGA不向CPU发送返回参数,结束通讯;
步骤六、帧数据接收模块判断发送完成至接收帧同步头的时间是否超过一帧通讯数据接收时间的n倍,如果是,则启动帧数据发送模块重新发送数据,如果否,则执行步骤七;
步骤七、帧数据接收模块判断返回参数中发送校验和标志是否正确,若错误则通知帧数据发送模块启动重新发送,若正确则继续步骤八;
步骤八、帧数据接收模块判断校验和是否正确,若错误则FPGA不向CPU发送返回参数,若正确则FPGA向CPU发送返回参数,并结束本次通讯;
所述n为大于等于10的正整数。
2.根据权利要求1所述的空间相机高可靠高时效异步串行通讯方法,其特征在于,步骤一中CPU向FPGA中先写入控制参数,后写入控制命令。
3.根据权利要求1所述的空间相机高可靠高时效异步串行通讯方法,其特征在于,步骤三中位接收模块对接收的通讯数据采用三判二的原则进行采样。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410250505.3A CN104038316B (zh) | 2014-06-06 | 2014-06-06 | 空间相机高可靠高时效异步串行通讯方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410250505.3A CN104038316B (zh) | 2014-06-06 | 2014-06-06 | 空间相机高可靠高时效异步串行通讯方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104038316A CN104038316A (zh) | 2014-09-10 |
CN104038316B true CN104038316B (zh) | 2017-06-09 |
Family
ID=51468921
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410250505.3A Expired - Fee Related CN104038316B (zh) | 2014-06-06 | 2014-06-06 | 空间相机高可靠高时效异步串行通讯方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104038316B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105376066B (zh) * | 2015-12-15 | 2018-09-28 | 上海斐讯数据通信技术有限公司 | 串口通信的验证方法及验证系统 |
CN106200663B (zh) * | 2016-08-16 | 2019-02-05 | 中国科学院长春光学精密机械与物理研究所 | 一种星载计算机控制飞轮的时序方法 |
CN106896818B (zh) * | 2016-12-26 | 2019-05-24 | 中国科学院长春光学精密机械与物理研究所 | 空间对地观测仪器的自动避日方法 |
CN107257277A (zh) * | 2017-05-11 | 2017-10-17 | 杭州航海仪器有限公司 | 串行帧同步多型锁定控制方法 |
CN107465499A (zh) * | 2017-09-21 | 2017-12-12 | 中国科学院长春光学精密机械与物理研究所 | 一种故障诊断与处理方法、装置及系统 |
CN109120479B (zh) * | 2018-08-30 | 2020-09-11 | 中国电子科技集团公司第三十八研究所 | 一种基于网络报文格式的网络吞吐量测试方法 |
CN112272824A (zh) * | 2020-01-13 | 2021-01-26 | 深圳市大疆创新科技有限公司 | 数据传输方法、装置、设备、mcu和存储介质 |
CN113426710A (zh) * | 2021-07-26 | 2021-09-24 | 苏州芒果树数字技术有限公司 | 视觉检测控制系统、分拣系统及方法、瞄准系统及方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103428496A (zh) * | 2013-08-16 | 2013-12-04 | 中国科学院长春光学精密机械与物理研究所 | 一种空间tdiccd相机图像实时传输、压缩及存储装置 |
CN103792841A (zh) * | 2014-01-23 | 2014-05-14 | 中国科学院长春光学精密机械与物理研究所 | 一种空间相机图像对时信息生成系统 |
-
2014
- 2014-06-06 CN CN201410250505.3A patent/CN104038316B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103428496A (zh) * | 2013-08-16 | 2013-12-04 | 中国科学院长春光学精密机械与物理研究所 | 一种空间tdiccd相机图像实时传输、压缩及存储装置 |
CN103792841A (zh) * | 2014-01-23 | 2014-05-14 | 中国科学院长春光学精密机械与物理研究所 | 一种空间相机图像对时信息生成系统 |
Non-Patent Citations (2)
Title |
---|
一种空间相机的数据通信系统设计;张培坤 等;《电子技术应用》;20111231;第37卷(第1期);第77-83页 * |
基于FPGA和TSC695F的空间相机控制器设计;武星星 等;《电光与控制》;20130731;第20卷(第7期);第87-92页 * |
Also Published As
Publication number | Publication date |
---|---|
CN104038316A (zh) | 2014-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104038316B (zh) | 空间相机高可靠高时效异步串行通讯方法 | |
CN103051414B (zh) | 一种串行通信纠错方法和系统 | |
CN103825696A (zh) | 一种基于fpga实现光纤高速实时通信的装置 | |
CN105099540A (zh) | 一种卫星处理类载荷在轨功能重构方法 | |
CN107832250A (zh) | 一种基于spi的主从通讯时序方法及可靠传输方法 | |
CN104199795B (zh) | 一种总线架构的数据传送和接收方法 | |
CN105183687B (zh) | 一种分时串口通信方法及系统 | |
CN111711609A (zh) | 一种串口通信中的协议设计方法 | |
CN103036661B (zh) | 具有自愈功能的自动请求重传方法 | |
CN107567107A (zh) | 一种传输数据的方法及装置 | |
CN106506124A (zh) | 重传报文确定方法及装置 | |
CN110990312A (zh) | 一种用于随钻探测中的芯片级数据通信方法 | |
CN103701663A (zh) | 一种1553b总线程控故障注入装置 | |
CN103795520B (zh) | 一种基于fpga报文实时同步方法 | |
CN104239254A (zh) | 串行异步通讯数据传输方法 | |
CN104317762A (zh) | 一种fpga自适应控制rs485芯片收发方向的方法 | |
CN106201971A (zh) | 一种基于总线同步校验的铁路信号安全计算机平台 | |
CN101873196B (zh) | 用于高速传输数据的方法、系统及板卡 | |
CN105871512B (zh) | 一种数据传输方法及装置 | |
CN206363300U (zh) | 一种电池管理芯片菊花链通信系统 | |
CN103825768A (zh) | 报文传输方法和装置 | |
CN103595511A (zh) | 一种电力系统内部网络i区至iii区数据传输的方法 | |
CN103346862B (zh) | 一种分级保护的片上网络数据传输装置及方法 | |
CN104429009B (zh) | 用于在数据包的双向传输情况下传输数据包的方法 | |
CN107911288B (zh) | 列车通信网卡及列车控制管理系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170609 Termination date: 20210606 |
|
CF01 | Termination of patent right due to non-payment of annual fee |