您的位置:首页 > 其它

xPC信号采集和分析(1)

2018-01-04 22:37 190 查看
背景介绍

在我的上篇文章用虚拟机在一台电脑上实现xPC实时仿真,进行xPC实时仿真的过程中,需要将仿真数据进行记录以便后续分析处理。xPC目标的信号采集过程是通过实时内核来完成的。实时应用程序的信号数据存储在目标机的RAM中,xPC目标程序支持以下类型的信号采集方式:

信号监视模式,该模式是一种不包含时间信息的信号采集过程。这种模式下,用户可获得当前一个或多个信号值。该信号并不是在实时应用程序中获得的而是在后台任务中获得的,优点是不会增加实时应用程序的计算负担。

信号记录模式,该模式是一个在实时运行过程中获取信号数据的过程。数据是在实时任务中获得的,所采集的数据具有时间标记信息。当程序运行到终点或用户手动结束运行后,宿主机就会发出从目标机上传数据的请求。然后用户就可将信号可视化或将数据存于硬盘上。

信号跟踪模式,该模式是一个在实时运行过程中获取信号并可视化的一个过程。数据在实时任务过程中获得,具有时间标记信息。采用该模式可以使用户采集数据并在目标机进行可视化,或将信号数据上传到宿主机进行可视化。比如通过UDP通信或者串口通信进行数据实时传输。

本文思路

本文将采用第二种方法,这种方法matlab自带的xPC帮助文件中有这样的Demo,标题叫Data Logging With a File Scope,这里只是解决运行Demo过程中出现的问题。

问题描述

在采用CD启动盘方式引导xPC内核时,出现了ERROR:No accessible disk found:file system disabled的问题。



在运行Demo时,出现ERROR:-4:drive not found的问题,且无法读取记录的数据,记录的数据显示为空。



解决方法

原因是xPC启动文件必须放入目标机上FAT32格式的分区中进行引导,而一般虚拟机新建的系统都是在NTFS格式下,这里采用虚拟机硬盘DOS启动xPC系统,在NTFS硬盘上格式化一块硬盘为FAT32格式,并将引导文件放到其中进行引导。

主要包括DOS系统安装,硬盘分区,启动实时内核三个主要的步骤。

1. 硬盘DOS系统安装,安装MaxDOS硬盘版:http://www.onlinedown.net/soft/59580.htm,安装目录与系统盘一致;

2. 对硬盘进行分区,推荐使用大白WinPE:http://www.dabaicai.org/ ,进入PE后,选择WinPE 2003,启动DiskGenius软件,新建一个分区(假设为F),分区大小为1GB,格式为Fat32;

3. 将xPC启动盘制作过程中生成的三个文件,即autoexec.bat、xpcboot.com以及xpctgo.rtb拷贝到Step2中新建的分区中,重启系统;

4. 选择进入“纯DOS模式 &MINI DOS MODE”,即可进入命令提示符界面.

5. 输入命令: c:\ 可进入C盘;纯Dos只能识别Fat32格式的盘,无法识别NTFS格式的盘;且会根据fat32/ntfs格式顺序对各盘的盘符进行重排,所以虽然上面创建的是F盘,此时极有可能会变成C盘或者D盘。需要查看文件列表确定是否是我们想进入的那个盘。

6. 输入命令: dir 可查看当前盘下的所有文件列表,会发现里面有三个文件;

7. 输入命令:autoexec.bat,即可启动xPC内核,看到启动界面,启动界面便不会出现ERROR:No accessible disk found:file system disabled。



在此基础上运行Demo,可以利用从目标机上传到宿主机的数据进行画图。

参考文献

杨涤. 系统实时仿真开发环境与应用[M]. 清华大学出版社, 2002.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息