CN103324212A - 一种基于fpga的航迹仪标绘速度控制卡 - Google Patents
一种基于fpga的航迹仪标绘速度控制卡 Download PDFInfo
- Publication number
- CN103324212A CN103324212A CN201310220991XA CN201310220991A CN103324212A CN 103324212 A CN103324212 A CN 103324212A CN 201310220991X A CN201310220991X A CN 201310220991XA CN 201310220991 A CN201310220991 A CN 201310220991A CN 103324212 A CN103324212 A CN 103324212A
- Authority
- CN
- China
- Prior art keywords
- interface
- pulse
- plotting
- control
- signal
- 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.)
- Pending
Links
Images
Abstract
本发明属于舰船导航设备领域,具体涉及一种可用于船舶航迹仪中,根据标绘数据自主选择匀速或匀加减速算法来控制步进电机、标绘过程中不占用航迹仪主机系统资源、标绘完成后自动告知主机的基于FPGA的航迹仪标绘速度控制卡。本发明包括FPGA芯片XC2S50,配置芯片18V01,输出驱动芯片SN74LS244,脉冲及控制输出接口HJY,JTAG接口,在线编程接口DOWNLOAD,通用I/O接口。本发明硬件方面相比原CDT800控制接口卡,系统的实时性、可靠性和集成化有了显著提高,同时价格更为低廉。电机走笔速度相比之前的匀速控制增加了一倍,提高了系统的快速性。
Description
技术领域
本发明属于舰船导航设备领域,具体涉及一种可用于船舶航迹仪中,根据标绘数据自主选择匀速或匀加减速算法来控制步进电机、标绘过程中不占用航迹仪主机系统资源、标绘完成后自动告知主机的基于FPGA的航迹仪标绘速度控制卡。
背景技术
航迹仪是现代舰艇、海洋考察船以及捕鱼船常用的一种必备导航设备,它是根据陀螺罗经、计程仪提供的航向和航程信息,或其它导航设备提供的定位信息,实时显示和记录本船及目标经纬度,并在不同比例的海图上连续完成舰船航行的航迹和各种航海标志的自动标绘。特别是在恶劣的海况条件下和战时尤其有应用价值,是现代导航系统的重要配套组成部分,其标绘速度是航海人员非常重视的一个技术指标,因为标绘速度直接关系到航迹仪的工作效率。
航迹仪的工作状态有跟踪和非跟踪两种。首先,人机交互模块处于开放状态,通过自检键和移笔键可以检查航迹仪的绘图功能。然后,由综导显控台装海图并向航迹仪发出装海图命令,进入跟踪状态,并屏蔽人机交互模块。航迹仪的实时标绘便是通过接收CAN总线上由导航定位设备发送的经度、纬度值及各种绘图命令,经过数学模型的解算,获得X,Y方向位移量,再经过直线插补运算,脉冲控制接口卡发送脉冲驱动电机带动绘笔标绘航迹和各种航海标志。
目前航迹仪普遍采用CDT800模块作为脉冲控制接口卡,其主要包括16位计数器/定时器与数字量I/O模块,可与PC/104模块构成一个控制系统。
CDT800模块装有两片Am9513A定时控制器,可提供了可编程频率合成、高精度可编程循环波形、可重触发数字单脉冲、日时时钟、报警、复杂脉冲产生、高精度波特率生成、移位脉冲生成、事件计数及波形分析等功能。
(2)CDT800有24通道TTL/CMOS兼容的数字量I/O,它们能直接与外部设备或信号连接,以感知开关的闭合,数字事件的触发、或固态继电器的动作。这些I/O是由模块上的71055可编程外围接日(PPI)芯片提供的。71055能按二种方式之一土作:方式0,方式1,方式2。24通道数字量I/O由I/O连接器引出。
CDT800采用的是用匀速脉冲控制步进电机的方式,并且通过中断触发来实现脉冲的发送,它的设计动态初始化要求严格且在执行过程中会占用过多的系统资源,不能完全满足实时性要求。此外它采用的是匀速控制方法,标绘速度比较慢,不能很好的满足大规模高强度标绘任务。
发明内容
本发明的目的是提出一种标绘速度更快,占用系统资源更少,价格更低廉,可靠性更强得基于FPGA的航迹仪标绘速度控制卡。
本发明的目的是这样实现的:
本发明包括FPGA芯片XC2S50,配置芯片18V01,输出驱动芯片SN74LS244,脉冲及控制输出接口HJY,JTAG接口,在线编程接口DOWNLOAD,通用I/O接口,航迹仪主机PC/104模块通过数据总线发送数据命令信息,由FPGA芯片XC2S50处理后转化为脉冲信号发送给输出驱动芯片SN74LS244,驱动芯片SN74LS244通过接口HJY,传递给X、Y向的步进电机驱动器。
本发明的有益效果在于:本发明使用FPGA作为标绘速度控制卡,硬件方面相比原CDT800控制接口卡,系统的实时性、可靠性和集成化有了显著提高,同时价格更为低廉。电机走笔速度相比之前的匀速控制增加了一倍,提高了系统的快速性。
附图说明
图1控制卡的电路原理图;
图2匀加减速控制中频率与步长的关系;
图3控制卡软件模块结构框图;
图4PC/104模块中X,Y向判别流程图;
图5控制卡中接口模块程序流程图;
图6控制卡中X向脉冲控制模块程序流程图;
图7控制卡中X向脉冲发生模块程序流程图;
图8控制卡程序加速过程中的仿真图;
图9控制卡程序匀速过程中的仿真图;
图10控制卡程序减速过程中的仿真图;
图11控制卡程序标绘结束时的仿真图。
具体实施方式
下面结合附图对本发明做进一步描述。
基于FPGA的航迹仪标绘速度控制卡,由基于Xilinx公司生产的FPGA元件XC2S50作为速度脉冲控制卡的核心,速度控制卡包括了以下几个部分:FPGA芯片XC2S50,配置芯片18V01,输出驱动芯片SN74LS244,脉冲及控制输出接口HJY,JTAG接口,在线编程接口DOWNLOAD,以及与航迹仪主机PC/104模块相连的通用I/O接口。
程序采用匀加减速的控制算法来控制步进电机,具体是指步进电机在启动时,以低于起 动频率fn的速度运行,然后匀加速,加速到一定速率fs(电机不失步最高工作频率)以后,就以此速率恒速运行;当快要到达终点时,匀减速,使其在减速到低于响应频率fn的速率下运行,直到停机并走完规定的步数。其具体过程分为加速过程和减速过程。
根据航迹仪步进电机的矩频特性、负载转矩以及标绘速度技术要求,变速控制算法的参数值,用verilog语言写出相应的软件程序,软件部分主要包括顶层模块,接口模块,脉冲控制模块,脉冲发生模块等。其特征在于控制卡接收PC104主板通过I/O接口发送的数据命令信息(主要包括:X、Y方向的分频值,脉冲个数,运行方向,及开始/终止运行,抬落笔,报警等),FPGA芯片XC2S50处理后,转化为相应频率的速度脉冲控制信号,经输出驱动芯片SN74LS244,通过输出接口HJY,传递给X、Y向的步进电机来实现航迹仪标绘的目的。
根据方案内容设定航迹仪标绘速度控制卡的输入和输出信号。输入信号可包括:同步时钟信号clk;复位信号rst;读、写控制信号rd、wr;主时钟信号countclk;10路地址信号addr;16路数据输入信号data。输出信号有:4路驱动脉冲信号driver;准备就绪信号ready;抬落笔控制信号reg_pen;报警信号regalarm;走步结束信号overxy。运行程序通过JTAG口或DOWNLOAD口烧写入配置芯片18V01中。
设定程序中匀加减速控制算法的参数。航迹仪系统的相关硬件相关参数为:XC2S50时钟频率fc=40000000.0Hz,X,Y向脉冲当量都为mx=my=0.0048mm,步进电机最大静转矩为1.23N.m。根据目前的设计要求,我们可以选定绘笔最高标绘速度为96mm/s,即最高频率为20000.0Hz,启动频率为g=5000.0Hz,停止频率g=5000.0Hz,公式f=g+at,考虑到绘笔的转矩限制,我们设定加速度a=350000,从而计算得出加速时间为t=0.0428s,完成加速过程所需步数536步。同样,在减速过程中,为了计算和编程方便,减速度我们也设定为a=175000,同样完成减速过程也需要536步,加上一定的冗余量即完成加减速过程最少需要1100步,即距离最少为5.28mm。
因此当所要标绘距离大于1100步时即采用匀加减速的控制方式,小于1100步时采用匀速控制,f=9000.0Hz。具体计算判别在航迹仪主机PC/104主板模块程序里进行,然后将相应的计算参数发送给FPGA控制卡,再进行相应的处理以产生对应的走步脉冲。
控制卡软件结构设计。本发明中,FPGA主要选用verilog语言描述,编译后的程序通过JTAG口烧写入配置芯片18V01中。
根据软件系统的划分原则,软件部分主要包括:
顶层模块
接口模块
X向脉冲控制模块
Y向脉冲控制模块
X向脉冲发生模块
Y向脉冲发生模块
软件模块结构框图如图3所示,PC/104模块中X,Y向判别流程图如图4所示。
接口模块主要功能为:在写方式,接收由PC/104主板传送的数据命令信息,经过对于其端口地址的判断,在相应的引脚输出,传递给脉冲控制模块。另外,在读方式,接收脉冲控制模块提供的标绘状态信息,通过数据总线发送给PC/104主板。脉冲控制模块的功能是:对接口模块传送过来的数据信息进行判断,来控制脉冲发生模块输出匀速脉冲还是匀加减速脉冲,同时通过脉冲发生模块的输出脉冲来记录剩余脉冲数,并在脉冲数等于零时发送结束信号。脉冲发生模块的主要功能是:根据脉冲控制模块传送的信息,产生相应的匀速或者匀加减速脉冲来驱动步进电机。所有的软件模块封装在顶层模块中。
程序中具体软件模块的设计。
(1)顶层模块:顶层模块将各子模块进行了封装,并对其各端口信号进行了映射和连接。
模块的输入信号包括:时钟信号clk;数据传输信号clkin;复位信号rst;读、写控制信号rd、wr;10路地址信号addr;16路数据输入信号data;2位边界状态信号boundary。
模块的输出信号包括:4路驱动脉冲信号driver(X、Y向脉冲输出信号outx、outy和X、Y向脉冲方向信号reg_dirx、reg_diry);准备就绪信号ready;抬落笔控制信号reg_pen;报警信号reg_alarm;以及标绘结束信号overxy。
(2)接口模块:在读方式,读入由主控制器传送的数据命令信息,经过对于其端口地址的判断,在相应的引脚输出,传递给脉冲发生模块。另外,在写方式,接收脉冲控制模块提供的状态信息,通过数据总线发送给主控制器。
模块的输入信号包括:数据传输信号clkin;复位信号rst;读、写控制信号rd、wr;10路地址信号addr;16路数据输入输出信号data;X、Y向标绘状态信号STARTX和STARTY。
模块的输出信号包括:两路运行方向信号reg_dirx和reg_diry;32路X、Y向脉冲个数初始化信号regnx、regny;16路X、Y向脉冲频率值初始化信号regfx、regfy;16路X、Y向加减速步数初始化信号regjx、regjy;运行开始信号start;强制停止信号force_over;抬落笔控制信号reg_pen;报警信号reg_alarm;标绘结束信号overxy。
其具体工作过程:首先,模块查询地址引脚addr的值是否为“0100000×00”,若是,再判断读控制信号rd是否为1,若rd=1为读入主控制器信号,再判断addr的第2位,若是1,则写偏移地址,即将端口的偏移地址写入寄存器reg_addr;若是0,通过查询reg_addr存储的偏移地址值,将数据从数据输入信号线data(0~15)读入,对各相应输出控制引脚进行初始化。 若rd=0且wr=1,则是向主控制器写信号,即写入标绘结束信号。其具体程序流程图如图5所示。寄存器reg_addr中各偏移地址对应的具体操作见表1,表1为对各控制信号引脚的初始化。
(3)X向脉冲控制模块
模块的输入信号包括:标绘开始信号start_x;停止信号force_x;16路X向脉冲频率判别值fx;32路X向脉冲个数初始化信号NX;16路X向加减速步数初始值JX;X向脉冲输出信号SX。
模块的输出信号包括:X向标绘结束信号STARTX;16路X向加减速过程中的参数DX;16路X向匀速频率值yunsu_x。
其具体工作过程:首先,模块读入X向步数初始值NX、X向脉冲频率判别值fx和X向加减速步数初始值JX,再对fx进行判别,如果大于匀速运动频率f=9000Hz,就选择匀加减速的控制方式,如果小于则即以fx的频率做匀速运动,设置参数将fx的值赋给yunsu_x,然后将脉冲发生模块的使能信号startx置1。此外,根据脉冲发生模块发出的脉冲信号作为输入,来记录剩余脉冲数,并在脉冲数等于零时发送标绘结束信号STARTX。其具体程序流程图如图6所示,Y向脉冲控制模块和X向相同。
(4)X向脉冲发生模块:根据脉冲控制模块传入的信息,产生相应的匀速或者匀加减速方波脉冲,其输出波形的频率即为X向步进电机的走步频率,其具体程序流程图如图7所示。Y向脉冲发生模块和X向相同。
模块的输入信号包括:系统时钟信号clk;16路X向加减速过程中的参数dx;标绘开始信号startx;16路X向匀速频率值yunsu_x。
模块的输出信号包括:X向输出脉冲outx。
其具体工作过程:首先,模块判别输入的yunsu_x的值是否大于零,如果大于零即输出频率值为yunsu_x的匀速脉冲,如果等于零即输出匀加减速脉冲,其加减速过程中每步对应的脉冲频率值事先已存入FPGA中,实现时根据输入的加减速过程中的步数参数dx来调用对应的频率值,dx从1开始逐步增大时,其对应的脉冲频率逐步增大即处于加速阶段;当dx值不变时,其对应的脉冲频率也不变即处于匀速阶段;当dx开始逐步减小时,其对应的脉冲频率逐步减小即处于减速阶段;再根据每步的脉冲频率值regfx输出相应完整的匀加减速脉冲频率outx,即实现了步进电机的匀加减速控制算法。Y向脉冲发生模块和X向相同。
航迹仪标绘速度控制卡的功能仿真。
功能仿真的作用是对源代码进行编译,检测语法上是否有错误,待编译通过后,仿真器再根据输入信号产生输出,根据输出可以判断功能是否正确。如果不正确,需要反复修改代 码,直到语法和功能都达到要求。按实际使用时使用到的数据信号值编写相应的测试激励文件,然后用Modelsim SE6.5进行仿真,即可弹出仿真波形曲线图,如图8、图9、图10和图11所示。
设置的仿真激励信号参数为:X向走步1600步,最高频率20000Hz,Y向走步1000步,为了尽量与X向同时完成走步,故Y向最高频率为12500Hz。图8表示的是X、Y向加速过程中的脉冲输出,根据regfx、regfy输出频率值可以看出输出频率的增加,且每输1个脉冲剩余步数计数值stepx、stepy减1。图9表示的是加速完成后匀速阶段的过程,即regfx、regfy保持不变,可以看出两向脉冲频率分别为20000Hz和12500Hz。图10表示的是X、Y向减速过程中的脉冲输出,根据regfx、regfy输出频率值可以看出输出频率的减小,且每输出1个脉冲剩余步数计数值stepx、stepy减1。图11是表示的标绘结束过程中的脉冲输出,可以看出剩余步数计数值stepx、stepy到达1之后就不再减小,且输出完成后,结束标志(STARTX和STARTY)都为零,即主机查询后即可知道标绘结束,从而完成了整个标绘过程。因此仿真结果与预期一致,证明程序达到了设计要求。
本发明在航迹仪的性能提升方面有明显作用,可以提高航迹仪标绘时的快速性和可靠性,降低对航迹仪主机资源的占用,且价格低廉,因此可广泛运用于目前使用的航迹仪中。
表1。
Claims (1)
1.一种基于FPGA的航迹仪标绘速度控制卡,包括FPGA芯片XC2S50,配置芯片18V01,输出驱动芯片SN74LS244,脉冲及控制输出接口HJY,JTAG接口,在线编程接口DOWNLOAD,通用I/O接口,其特征在于:航迹仪主机PC/104模块通过数据总线发送数据命令信息,由FPGA芯片XC2S50处理后转化为脉冲信号发送给输出驱动芯片SN74LS244,驱动芯片SN74LS244通过接口HJY,传递给X、Y向的步进电机驱动器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310220991XA CN103324212A (zh) | 2013-06-05 | 2013-06-05 | 一种基于fpga的航迹仪标绘速度控制卡 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310220991XA CN103324212A (zh) | 2013-06-05 | 2013-06-05 | 一种基于fpga的航迹仪标绘速度控制卡 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103324212A true CN103324212A (zh) | 2013-09-25 |
Family
ID=49193016
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310220991XA Pending CN103324212A (zh) | 2013-06-05 | 2013-06-05 | 一种基于fpga的航迹仪标绘速度控制卡 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103324212A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103712619A (zh) * | 2013-12-30 | 2014-04-09 | 重庆华渝电气集团有限公司 | 一种基于航迹仪的高精度标绘控制方法 |
CN104613968A (zh) * | 2015-02-05 | 2015-05-13 | 重庆华渝电气集团有限公司 | 一种航迹仪边界智能标绘控制方法 |
CN105242586A (zh) * | 2014-07-09 | 2016-01-13 | 北京自动化控制设备研究所 | 一种双轴旋转调制控制电路 |
CN110465422A (zh) * | 2019-08-29 | 2019-11-19 | 内蒙古大学 | 一种基于fpga的喷涂机运动控制系统及其运动控制方法 |
CN112683279A (zh) * | 2020-12-15 | 2021-04-20 | 重庆华渝电气集团有限公司 | 一种航迹仪的绘笔运动控制方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5744874A (en) * | 1980-08-29 | 1982-03-13 | Furuno Electric Co Ltd | Display controller for nautical instrument |
US20070256492A1 (en) * | 2006-05-05 | 2007-11-08 | Peter Trogdon | Nautical instrument having slidable mounting and locking |
US20080069505A1 (en) * | 2006-09-14 | 2008-03-20 | Schott Ag | Display device with fiber-optic arrangement |
CN101382787A (zh) * | 2007-09-07 | 2009-03-11 | 深圳市众为兴数控技术有限公司 | 一种基于fpga的高速运动控制卡装置 |
CN102297649A (zh) * | 2011-07-18 | 2011-12-28 | 宁波锦辉指针有限公司 | 一种汽车仪表指针直径测量仪 |
CN203299583U (zh) * | 2013-06-05 | 2013-11-20 | 哈尔滨工程大学 | 一种基于fpga的航迹仪标绘速度控制卡 |
-
2013
- 2013-06-05 CN CN201310220991XA patent/CN103324212A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5744874A (en) * | 1980-08-29 | 1982-03-13 | Furuno Electric Co Ltd | Display controller for nautical instrument |
US20070256492A1 (en) * | 2006-05-05 | 2007-11-08 | Peter Trogdon | Nautical instrument having slidable mounting and locking |
US20080069505A1 (en) * | 2006-09-14 | 2008-03-20 | Schott Ag | Display device with fiber-optic arrangement |
CN101382787A (zh) * | 2007-09-07 | 2009-03-11 | 深圳市众为兴数控技术有限公司 | 一种基于fpga的高速运动控制卡装置 |
CN102297649A (zh) * | 2011-07-18 | 2011-12-28 | 宁波锦辉指针有限公司 | 一种汽车仪表指针直径测量仪 |
CN203299583U (zh) * | 2013-06-05 | 2013-11-20 | 哈尔滨工程大学 | 一种基于fpga的航迹仪标绘速度控制卡 |
Non-Patent Citations (1)
Title |
---|
王克文: "基于ARM及FPGA的智能化航海作业标绘台的设计", 《中国优秀硕士学位论文全文数据库(电子期刊)》, 15 June 2010 (2010-06-15), pages 13 - 36 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103712619A (zh) * | 2013-12-30 | 2014-04-09 | 重庆华渝电气集团有限公司 | 一种基于航迹仪的高精度标绘控制方法 |
CN103712619B (zh) * | 2013-12-30 | 2016-10-12 | 重庆华渝电气集团有限公司 | 一种基于航迹仪的高精度标绘控制方法 |
CN105242586A (zh) * | 2014-07-09 | 2016-01-13 | 北京自动化控制设备研究所 | 一种双轴旋转调制控制电路 |
CN104613968A (zh) * | 2015-02-05 | 2015-05-13 | 重庆华渝电气集团有限公司 | 一种航迹仪边界智能标绘控制方法 |
CN110465422A (zh) * | 2019-08-29 | 2019-11-19 | 内蒙古大学 | 一种基于fpga的喷涂机运动控制系统及其运动控制方法 |
CN112683279A (zh) * | 2020-12-15 | 2021-04-20 | 重庆华渝电气集团有限公司 | 一种航迹仪的绘笔运动控制方法 |
CN112683279B (zh) * | 2020-12-15 | 2023-10-03 | 重庆华渝电气集团有限公司 | 一种航迹仪的绘笔运动控制方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103324212A (zh) | 一种基于fpga的航迹仪标绘速度控制卡 | |
CN103954903B (zh) | 一种可实时解算的多模式输出电路测试系统 | |
JPH08227367A (ja) | ハードウエア−ソフトウエアデバッガ | |
CN101114174A (zh) | 嵌入式四轴运动控制器 | |
CN103176068A (zh) | 一种基于总线的测试模块 | |
CN102360329A (zh) | 总线监控与调试控制装置及进行总线监控与总线调试的方法 | |
CN102291073A (zh) | 多轴步进电机插补控制器及多轴步进电机运动控制卡 | |
CN102122149A (zh) | 用于纸箱打样机的嵌入式控制系统及其控制方法 | |
CN103591961A (zh) | 一种基于dsp和fpga的捷联罗经导航计算机 | |
CN104608383A (zh) | 一种基于熔融沉积3d打印机的控制系统及其方法 | |
CN203299583U (zh) | 一种基于fpga的航迹仪标绘速度控制卡 | |
Zhou et al. | A new architecture of open CNC system based on compiling mode | |
CN112685239A (zh) | 一种针对多核dsp+fpga构架处理电路的自动测试系统及方法 | |
JPS6421546A (en) | Device for collecting program execution history | |
CN100514068C (zh) | 滑动时间窗口法测量旋转轴转速的方法 | |
CN201196740Y (zh) | 一种火焰切割机的电气自动控制系统 | |
CN201993421U (zh) | 一种自动测试毫米波前端的系统 | |
CN106873434A (zh) | 一种嵌入式标定平台控制系统 | |
CN102122147A (zh) | 嵌入式数控钻床控制系统及工作方法 | |
CN109514285A (zh) | 一种基于dsp的xy工作台绝对式光栅信号实时采集系统 | |
CN202172382U (zh) | 多轴步进电机插补控制器及多轴步进电机运动控制卡 | |
CN106647461A (zh) | 一种基于arm‑fpga的自动绕线机控制系统 | |
CN204480170U (zh) | 基于处理器的自检测、异常时复位系统 | |
CN203643817U (zh) | 基于三轴定位的汽车仪表程序写入设备 | |
Paiz et al. | FPGA-in-the-loop-simulations for dynamically reconfigurable applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20130925 |