搜档网
当前位置:搜档网 › SimplIQ编程笔记

SimplIQ编程笔记

SimplIQ编程笔记
SimplIQ编程笔记

编程软件手册

SimplIQ驱动描述

SimplIQ驱动器是复杂的、面向网络的、单轴数字驱动器,特色:

1.先进的控制算法,包括高阶过滤器和增益调度

2.一个复杂的参考生成算法,其中包括绝对时间内插运动,跟

着ECAM辅助信号

3.同步网络操作能力

4.CANopen标准一致性

5.用户友好的编程

6.先进的分析工具设置

7.内置auto-tuning设施

8.内置数据库维护工具

9.内置的固件维护工具

所有的都在微小的DSP中实现

软件组织

SimplIQ家族的驱动器,DSP软件分为三个部分:

1.启动软件,这是永久烧到内部DSP闪存和在产品生命不能升级。引导软件包括助攻的数据固件在识别准确的驱动模型的操作。的数据包括最大电机相电流,名义总线电压的硬件传感器的通信和I / O接口和驱动器的年级(模型) (标准或高级)。

2.操作软件(固件),这可能是在用户网站如果升级或更新修改是必需的。。

3.支持数据库装载到串行闪存。这个数据库服务为特性描述作为一个归档系统,文件系统存储的数据库和应用程序存储的工厂或用户提供的程序。。

启动软件功能:

1.某些DSP初始化寄存器

2.自动验证测试代码。如果代码验证失败,它将自动转移到下载固件

模式

3.处理和解释退化的通讯,在所需的固件下载功能。

4.支持固件下载到芯片上的闪存

5.将控制转移到固件(软件)

固件

固件实现所有其他软件功能,如在本手册所述SimplIQ命令参考手册。固件将控制转移到引导软件当一个下载固件(DF)命令启动一个固件版本升级。在结束的固件下载过程中,SimplIQ驱动重新启动。

特性

特征数据加载到串行闪存。它包括一个文件分配表和几个文件包含的数据SimplIQ驱动器,包括:

1.支持的命令列表

2.错误代码列表

性格使IDE中的所有数据项处理SimplIQ驱动。该文件储备分配表空间的存储应用程序参数和用户项目。个性数据使用固件烧到串行闪存软件。固件可以引导没有个性的数据,但它并不完全功能之前个性数

据编程。完整的解释个性数据给出在附录A。

相关软件

The Elmo Composer application电脑在Microsoft Windows上运行,提供了支持软件

用于设置、调整计划和评估的性能SimplIQ驱动器。在其许多工具,软件包含:

1.设置和优化工具

菜单进入基本的应用程序数据和限制

工具关联函数的I / O连接器别针

电流控制器自动调优

自动换向调优

手册,先进的手动和自动速度控制器调优

手册,先进的手动和自动位置控制器调优

2.智能终端,直接使用rs - 232或CAN

3.记录器有先进的范围控制、同时观察8个信号、一系列的事件触发。

4.应用程序数据库维护:保存和加载应用程序数据库,和编辑应用程序参数,和帮助

5.先进的用户程序开发IDE:

编辑、编译、上传/下载、Debugger:断点、查看变量、调用堆栈表

The Composer software读取从SimplIQ个性数据驱动,从而适应特定的驱动模型

计量单位

本部分描述使用的测量单位SimplIQ驱动,时间, 位置、速度、电压和电流。

位置详见P12

SimplIQ驱动指的是使用位置传感器计数,这可能与物理有关单位使用以下命令:

CA[18] 旋转电机一个完整旋转传感器的计数。

CA[23]直线电机每个单位计数,值存储,不用于内部计算。

YA[1],YA[3] 丫[1]是辅助反馈分辨率,在计数/物理单元。丫[3] 表明什么物理单位是:革命,仪表或其他。丫[1] 丫[3]存储只为了方便;SimplIQ软件不使用这些数字用于任何内部计算。

速度及加速度

以数/秒速度和加速度测量计数/ second2。的速度单位可能与物理单位将旋转的计数, 米或其他,如2.3.1节中解释。

电流和转矩

在安培电流测量,尽管没有单一的方法指定当前的三相电机。对于正弦电机,RMS相电流通常指定了电动机电流。RMS决定机械旋转所以相电流是电机当前的“电机电流“只要电机恒速。不规则电机,传统的六步驱动一个电动机相位开路,且只有一个驱动电机电流流经两个阶段。这个driven-phase当前指定“电机电流。不规则电机六步变换在1安培,均方根电流是0.92安培。SimplIQ驱动器有一个电动机电流的定义,尽管它同样可以运行用正弦、梯形或自由电机绕组。电机电流被定义为最大绕组。

获得正弦RMS相电流电机,增加电机电流报告的SimplIQ驱动0.71倍(有道翻译稍有出入,详见P12/ 2.3.3)

SimplIQ驱动外围设备

1.位置解码器

SimplIQ驱动器包含两个位置解码器-主要的和辅助的,彼此类似。解码器都定时(通过定时器组A和B)为准确速度信息。位置解码器措施正交或脉冲/方向。译码器的最大计数率20 MHz,没有输入滤波器。如果一个输入滤波器应用,最大脉冲率降低(这是完全解释EF[N]命令在SimplIQ命令参考手册)。

编码器的输入没有保护:没有硬件识别非法转换。超过最大脉冲的计

数率造成损失不能被检测到。

2.A/D转换器

采样一下信号

Ia Ib Ic 同时检测三相电流

模拟输入和参考电压,同时采样形成一个差动测量

线电压采样纠正当前环路增益

所有的测量的分辨率是12位,而且,在实践中,最后一位是吵杂的。电动机电流测量偏移量,特殊测量的结果机制。由于电子错误SimplIQ 驱动电路、模拟输入无法避免一个偏移量,可以纠正的分辨率大约5毫伏,使用作为[1]参数。[1]可以正确的偏移量的有限的决议范围内5到10毫伏。这意味着,例如,如果AG)[2]= 10000,抵消校正的质量速度模拟引用将被限制在大约100 /秒

数字输入

驱动的六个数字输入插脚路由到一个数字输入端口。此外,两个别针(5和6)路由到高速捕获输入主和辅助导航。特殊功能,如启用、停止RLS 和读者与数字相关的输入插脚(指SimplIQ IL命令的命令参考手册)。数字输入处理不同在其他驱动器,看到他们安装指南的细节。

数字输入响应时间受限于光学耦合器和速度输入过滤器。编码器指数和家庭输入过滤同样的位置解码器。的时间位置解码器过滤器是在英孚[N]命令解释道部分SimplIQ命令参考手册。

另一个数字输入过滤软件。软件的时间过滤解释如果[N]命令部分

SimplIQ命令参考手册。

数字输出

SimplIQ驱动的两个数字输出连接器可以用于non-committed别针数字输出,也可以是OL命令程序的特殊功能, 如激活外部刹车。

与主机通讯

Rs232 详见:P15

编译语言

SimplIQ伺服驱动器使用的沟通语言,使得用户:

1.设置驱动器

2.发送命令

3.查询驱动状态

两种方法可以用来与驱动通信:

1.使用通信接口- rs - 232或CANopen转移命令驱动的驱动和接收立即响应。这方法需要动力和之间的在线交流和密切合作它的主人。物理和标准rs - 232和CANopen通信需要不同的每个方法的命令语法。本章描述了驱动语言根据基本rs - 232或可以“OS”语法。

2. 写一个程序的驱动语言在驱动和存储记忆。驱动器就可以运行程序以最小或没有主机援助

命令行

表达式以逗号、换行、或回车终止。

用户程序语言

用户程序组织

1.变量声明

2.程序文本,包括表达式、命令、标签和评论

3.退出指令,它可以用来终止程序

编译器的命令不能用于一个程序是那些:

1.上传或下载数据驱动器和主机之间。

2.数据存储在闪存或检索数据的闪存

3.参与执行使用程序

单个或多个命令执行

执行一个完整的政策确保命令行执行的保证序列和允许用户控制程序执行的速度。越命令在一个程序,将程序执行速度越快,为代价的慢响应主机通信。

但是请注意,这一政策的不足之处是,如果一个程序的执行需要很长时间,或者如果它永远循环内部,SimplIQ驱动器可能成为完全对其可以和rs - 232通信。为了减少这种风险, 执行一个程序行是3秒的超时限制保护最长时间程序行可以持续执行。如果一个程序执行超过3行秒,SimplIQ驱动器停止错误代码96:用户程序超时。

行和表达式终止

一行可以有以下终端:回车,换行或它们的组合。一行可能包含一个表达式或一个序列的表达式。表达式在一个序列在同一行可以用分号或逗号分开(不是括号或内部括号)。例如:

a = 3 ,

b = 2 ,

c = a + b , One line of three expressions separate

d by commas

a = 3 ;

b = 2 ;

c = a + b ; One line of three expressions separate

d by semicolons

a = 3 ,

b = 2 ;

c = a + b One line of three expressions separate

d by a comma, a

semicolon and terminated with a line feed

[a,b] = func (23, c, 3.14) An expression in which the comma is not an

expression separator because it is inside parentheses

行延续用…连接上下行

限制

用户程序文本的每一行最多可以包含128个字符(适当的屏幕上可读性)。如果一个文本行超过这个值,编译器错误问题

表达式也有局限性:表达式的最大容许长度是512 符号,不包括评论和椭圆。如果一个程序包含一个复杂的表达式需要多个行,摘要的长度(没有评论和表达椭圆)超过512个字符,编译器错误问题。

系统命令

SimplIQ系统命令(描述完全SimplIQ命令参考手册) 由一个两个字母的助记符号(只有英文字母,不区分大小写)。为例子中,表达式ac = 100000和AC= 100000有同样的意思, 尽管符号是不同的。每个命令都有一个16位的国旗,每个点定义任何功能。例如,第四位(后处理国旗)定义了是否可以使用命令设置一个值。

故障处理

1.意外、预期之外的错误

详见:P40

2.预期错误

程序下载、上传

成功编译后,编译后的代码可以下载到SimplIQ驱动器。这一步是由IDE支持。每个下载之前,自动清除闪存部门,用于保存用户程序。串行flash使用两个命令执行下载和上传:DL和LS。这两个命令使用辅助LP命令,这是一个向量整数命令。CP 命令可以用来清除用户闪存区域,和CC命令可以使用checksum-verify程序,并设置程序读取标志。

二进制数据

SimplIQ驱动闪存是界面上的二进制数据。发送二进制数据rs - 232行是有问题的,因为他们不区分数据和分隔符

用232发送有问题的字符:

1.128~255的数字

2.所有可能的结束符

3.等号(=)后退(backspace)

为了防止这个问题,在数据上传使用十六进制的二进制格式和下载,虽

然增加了传输的数据量。

每个字节的十六进制格式由两个数字(如0 x12),被认为是单个的字符。例如,8位十六进制0 x12数量二进制格式两个字符的序列:1和2。数字的表示在DSP闪存不同于其表示在个人电脑:

1.8-bit 数字用相同的方法表示

2.16位数字,表示十六进制格式等于0 x1234,表示在DSP在以

下两个字节内存:

1.字节1等于0 x12的值以十六进制形式

2.字节2等于0 x34值以十六进制形式

3.32位数字,表示在等于0 x12345678,十六进制格式在DSP记

忆在接下来的四个字节:

1.字节1等于0 x56的值以十六进制形式

2.字节2等于0 x78值以十六进制形式

3.字节3等于0 x12的值以十六进制形式

4.字节4等于0 x34值以十六进制形式

下载辅助命令:

LP[N] CP CC

下载程序:

DL命令

例如:

LP[1]=start;

DL##xxxxxxxxxCS;

XXXXXXXX 表示escape-sequenced数据有效负载

Start 表示用户程序的字节地址flash

CS 表示消息的16位校验和,包括DL # #。

DL命令错误可能是由于:

1.试图写入flash的保护区。而DL可能开始合法写入flash,它

的最后一个字节可能尝试非法(保护)写。在任何这样的情况下,DL命令将被拒绝和串行flash的内容不可预知的。

2.当电机在使用DL。

3.当程序正在运行使用DL。

4.有一个错误的校验和。在这种情况下,DL将被拒绝,但不会造成

伤害

5.发生验证错误。如果DL试图写一个错误写入flash 以前,

写可能会失败由于验证错误。在这种情况下,的内容flash 将不可预测的,它需要被清除和完全重写。

6.DL字符串太长。DL字符串的最大长度是500字节,由于内

部SimplIQ驱动器限制。

7.程序的有效标志不是-1.DL不会被执行(CP必须在DL之前发出)

下载过程:

1.读的位置(loc)和用户代码的长度分区,使用LP[3] LP[4]命令

2.验证映像块有适合的分配空间

3.使用CP清除闪存。

4.下载你的印象文件使用下面的序列:

LP[1]=loc;

DL##…100 bytes of payload

LP[1]=(loc+100)

DL##…next 100 bytes of payload

. . . and so on until the end of the image

4.使用CC =校验和命令宣布加载和验证整个的结束下载过程。

上传过程:

1. Read the location (loc) and the length (len) of the user code partition from the mainTOC, using the LP[3] and LP[4] commands.

2. Upload your image file using the following sequence:

LP[1]=loc;

LP[2]=100

Use LS to get the next 100 bytes of the payload. LP[1]=(loc+100);

Use LS to get the next 100 bytes of the payload.

. . . and so on until the end of the image.

程序执行

1.启动一个程序

XQ程序启动的命令,这表明,标签应该执行开始。

2.停止和恢复程序

HP命令用于程序停止,冻结程序状态,不会重置参数,

XC用于恢复程序执行,从冻结地开始执行。

详见P86,举例。

3.自动程序执行权力

如果autoexec函数包含在用户程序,该程序后线功能声明在power up。

4.保存串行闪存CP

调试

这个过程允许用户调试一个程序,下载到闪存的SimplIQ驱动。这个步骤可能是有用的在开发和用户程序检查用户流

运行、断点、恢复

XQ启动一个标签或函数,如下:

1.XQ##MYFUNCTION(a,b,c) 运行函数

2.XQ不从函数返回值

3.XQ##LABEL runs from ##LABEL

4.XQ从一开始就运行用户程序代码

5.XQ不带参数是非法的

6.XQ不返回任何值

目前机体状态

DB##MS返回机体状态

程序状态

DB##PS 详见P89

错误状态

DB # # ES命令返回最后一个用户程序的错误

设置、清除断点

SimplIQ驱动支持六个断点同时:五个用户定义的断点,另一个用于内部使用IDE。任何时间和任何地点,可以设置断点无论如果程序正在运行。

更多调试内容详见手册P95以前

相关主题