利用FreeMASTER控制实时数据——转帖

2020-02-20 20:38发布

我在之前写过一篇使用freemaster完成飞思卡尔DSC调试的博客,最近有朋友提了一些相关问题,顺便写了这个博客,希望对大家有帮助。飞思卡尔freemaster主页:http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=FREEMASTER,关于该工具的详细信息以及使用教程都可以在这里找到。第一次接触freemaster是迫于飞思卡尔的codewarrior for dsc调试工具不怎么给力,无法在线实时观测变量,所幸有这么一个调试工具,总算把问题解决了,用过几次之后,逐渐发现了他的好处,现在已是爱不释手。FreeMASTER对于各位来说可能不是非常熟悉,但是,的确它被列入飞思卡尔开发工具已经很多年了。可是这么多年来飞思卡尔并未对其做大量的宣传,只是在飞思卡尔的一些参考设计中能看到他的身影,不知道freescale是作何考虑。FreeMASTER是一种实时调试监控器。下面详细说明它可以解决的问题。你可以编写实时系统软件,例如运行电器的电机、汽车发动机控制系统、安全气囊中的传感器、飞机控制界面或任何含有反馈回路的系统(飞思卡尔在这些方面都用freemaster做过许多例子,可以到freescale网站上下载例程研究)。现在,对动态系统进行实时调试。有的时候你需要停止系统运行研究它的状态。不仅需要观察系统的动态运行,还需要进行一些干预,了解工作过程中为什么出错!对于常规调试器来说这是做不到的,FreeMASTER恰恰可以解决这个问题,that‘s right。采用FreeMASTER,你可以建立一个调试对象的通信通道;可以按照自己确定的采样率来实时监测感兴趣的变量;可以实时修改这些变量,即将数据送入调试对象的管道中,动态修改系统的行为。FreeMASTER采用示波器显示本地数据。可以显示多种变量,示波器含有所需的各种控制选项。图1所示FreeMASTER跟踪两个简单变量。一个是上升到最大,然后下降至零的短值。另一个采用表中读取的数据生成正弦波。我将步进增量改变到一半,为的是证明可以将数值送入调试对象。图 1: FreeMASTER跟踪显示实时变量值。
freemaster的扩展性也是非常好的,显示区可通过HTML任意扩展。一旦掌握了FreeMASTER,就可以添加各种第三方基于ActiveX的仪器“widget”,将其嵌入显示区中,可以按照示波器工作方式编写变量,读取和/或改变数值。从而根据测试或演示的系统创建或简洁或复杂的仪表板。这种开放式设计使FreeMASTER成为极为灵活且强大的工具。图2示例是飞思卡尔官方例程:发动机发生爆震以及采用基于Power Architecture技术的Qorivva MCU进行反馈控制的截屏。图 2: FreeMASTER工具的数据可视区可任意扩展。不仅仅是这些,你可以嵌入幻灯片、演示文本、数据表或产品或问题的整包信息,不信你就试试。freeMASTER的塔式系统汽车传感器项目就是一个实际的例子。数据表、电路图和预制的所有传感器全部内置在一个FreeMASTER项目。FreeMASTER还配有数据跟踪功能,称作Recorder。Recorder采用目标缓冲器保存数据读数,然后将缓冲器下载到数据显示器。它可采用比示波器更高、更可靠的采样率(约10微秒分辨率)捕获数据。显然,这对应用的实时性可能会产生一定影响,但数据捕获对于分析的价值是无法估量的。您可以确定需要捕获的变量(最大八个),规定目标缓冲器的尺寸。
我们还可以规定启动采样的触发事件。采用示波器进行“实时”分析可看到发生的情况。相对于数据可视化的详细程度,这实际上是一个比较粗略的视图。您不能以精细的粒度缩小放大数据进行分析。采样率也不能恰好一致。采样间隔过程中会发生很多情况。例如,如果以高步进增量“实时”提取同一正弦波数据,结果非常难看。图3中很难看出完整的正弦波图形,取决于数据变化速度,这种显示结果显然是不够的。图 3: 示波器实时有限。记录器分辨率相当精细,以微秒为单位。采用同样高步进增量跟踪数据如图4所示。从图中可以看出,以微秒为单位的分辨率正弦波形相当平滑。图 4: 数据记录器以精细时间分辨率捕获数据。即使如此,凡事都是相对的。如图5所示,放大数据。以微秒分辨率观察数据时,可以看到,我们从数值表中提取数据时产生的递增变化。图 5: FreeMASTER缩放功能概念演示。所有这些证明,可以采用FreeMASTER按照应用所需的详细程度研究数据。还可以将数据捕获到文本文件中,供今后采用其他工具进行分析。设置数据跟踪一般需要配置FreeMASTER中的记录器,规定需要跟踪的变量。如果想改变默认的缓冲器尺寸,可以修改标头文件,非常简单。平台支持和连接实时数据监控不可能不在一定程度上影响性价比。读取或保存数据,然后将其推送到管道中需要一个过程。但FreeMASTER具有多种通信方法,其中有些侵扰非常低,如OSBDM。其他工具则需要目标驱动器。下表汇总了平台支持和连接协议。BDM连接对运行中软件的侵扰几乎为零。我们前面谈过的数据跟踪需要目标驱动器。表 1: FreeMASTER使用环境和方法。硬件在环仿真改变数据输出目标也许是这种工具最令人兴奋的功能。与数据可视化引擎的设计一样,数据流本身不限于FreeMASTER。数据可通过ActiveX接口供任何使用ActiveX服务的应用访问,如MATLAB®、Excel、Internet Explorer、PERL、VBScript、Jscript等。至于您如何使用完全取决于您的想象。FreeMASTER数据输入MATLAB或Simulink是两个高水平用例。您可以输入实时、实际环境下的数据,而不是理论数据进行复杂模拟,观察模型的表现。另外,也可以采用相同的输入,同时在处理器和模型中运行,采用FreeMASTER输出处理器的结果。对比两个系统的结果,观察模型在实际环境下的运行情况,确定模型是否有效,如果有效,条件是什么。FreeMASTER支持在高度复杂的动态和非线性系统环境下测试模型。这种方法的确很爽。如果深入了解,我想您一定会对freemaster感到着迷。不过,这种灵巧的工具还有更神奇之处。FreeMASTER可与CodeWarrior工具轻松集成。由于一般需要目标驱动器,因此往往需要添加源码并将其整合到项目中。如前所述,这样可以提供灵活性,在改变缓冲器尺寸等处理时很容易。配置FreeMASTER支持可视化显示时,可以将信息保存到FreeMASTER项目文件中。利用拖放功能将FreeMASTER项目文件加入相关的CodeWarrior项目中。在CodeWarrior工具内双击,即可启动FreeMASTER。就这么简单,不需要任何其他处理。这个工具的确实现了我们的支持理念,您不需要使用特定的开发环境。FreeMASTER是一个单独的应用。您可以在此处下载这个工具以及所需的通信驱动器软件。您可以将它们部署在其他开发环境下,如IAR工具。说了这么多,可能有的朋友不相信或者心理有疑惑,一句话,用用试试就知道了。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
34条回答
cn_x
1楼-- · 2020-02-22 13:16
 精彩回答 2  元偷偷看……
bluestone2012
2楼-- · 2020-02-22 16:53
最近好活跃啊
cn_x
3楼-- · 2020-02-22 22:41
浪里白条 发表于 2014-8-28 13:46
飞思卡尔哪些芯片是这种东西呢?

数字信号控制器(DSC)是单片机数字信号处理器(DSPs)的集合体,可视为可进行数字信号处理单片机和单片机一样,数字信号控制器提供了快速中断响应和像PWM看门狗计时器等面向控制对象的外部设备。通常使用C语言编程,但也可以用基于设备本身的汇编语言。在数字信号处理器这一方面,它们加入了绝大部分DSP都有的特征,例如单周期乘法累加器(MAC),桶形移位器和大型累加器。这个定义是由Microchip Technology在2002年提出其的6000系列数字信号处理器时提出的,被大多数厂商接受,但不是所有厂商都采用DSC的定义。比如,InfineonRenesas就认为他们的DSC是单片机。数字信号控制器在广泛的应用上被使用,但最主要是应用在电机控制,功率转换和传感器处理中。目前DSC在电动机和电力供应上低损耗的特点使绿 {MOD}科技成为它们的市场潜力。据市场调研公司Forward Concepts(2007)的报告,市场份额排名前三的DSC供应商是德州仪器飞思卡尔Microchip Technology。这三家公司在DSC市场占主导地位,其他供应商如Infineon和Renesas只占一小部分。DSC 芯片[编辑]注意: 数据来源于 2012 (Microchip and TI),表格目前只包括排名前3的DSC供应商。
供应商设备时钟速度 (MHz)Flash (kB)PWM通道, 位数, 负载循环MicrochipdsPIC30F306–1444–8 (16 bits, 1 or 16.5 ns depending on part)dsPIC33F4012–256up 18 PWM (16 bits, 12.5 ns)dsPIC33E7064-512up 16 PWM (16 bits, 8.32 ns)Texas InstrumentsTMS320F28x60–15032–51216 PWM (13 bits, 150 ps)TMS320LF240x4016–647–16 PWM (11 bits, 150 ps)FreescaleMC56F83x6048–28012 PWM (15 bits, 10 ns)MC56F80x3212–645–6 PWM (15 bits, 10 ns)MC56F81x4040–57212 PWM (15 bits, 10 ns)
浪里白条
4楼-- · 2020-02-23 00:53
cn_x 发表于 2014-8-28 13:53
数字信号控制器(DSC)是单片机和数字信号处理器(DSPs)的集合体,可视为可进行数字信号处理的单片机。 ...

原来如此,多谢讲解哈。
cn_x
5楼-- · 2020-02-23 05:17
浪里白条 发表于 2014-8-28 13:57
原来如此,多谢讲解哈。

话说你的飞币都破7000了,离塔式开发板已经不远了啊,加油!
浪里白条
6楼-- · 2020-02-23 06:11
 精彩回答 2  元偷偷看……

一周热门 更多>