打印
[应用相关]

关于无损监测方面的应用

[复制链接]
楼主: wangjiahao88
手机看帖
扫描二维码
随时随地手机跟帖
41
wangjiahao88|  楼主 | 2019-6-18 17:06 | 只看该作者 |只看大图 回帖奖励 |倒序浏览

使用特权

评论回复
42
wangjiahao88|  楼主 | 2019-6-18 17:07 | 只看该作者

使用特权

评论回复
43
wangjiahao88|  楼主 | 2019-6-18 17:08 | 只看该作者

使用特权

评论回复
44
wangjiahao88|  楼主 | 2019-6-18 17:09 | 只看该作者

使用特权

评论回复
45
wangjiahao88|  楼主 | 2019-6-18 17:09 | 只看该作者

使用特权

评论回复
46
wangjiahao88|  楼主 | 2019-6-18 17:19 | 只看该作者

使用特权

评论回复
47
wangjiahao88|  楼主 | 2019-6-18 17:20 | 只看该作者

使用特权

评论回复
48
wangjiahao88|  楼主 | 2019-6-18 17:21 | 只看该作者
    为了简化软件设计,将嵌入式监控系统的各个功能模块化,本文设计了用于描述任务模块
的数据结构,用于封装各个模块的实现函数,实现任务循环的管理。在描述任务的数据结构中,
通过任务标志位可以表示的就绪状态,这样软件的各个模块之问可以相互操作,使能或失能某
些特定任务,实现复杂的逻辑关系;以函数指针变量的形式保存任务模块的执行函数,当任务
需要执行时,调用该指针,既可将CPU使用权交给任务模块,直到任务执行完成,返回CPU
使用权,实现多个任务之问的切换。

使用特权

评论回复
49
wangjiahao88|  楼主 | 2019-6-18 17:21 | 只看该作者

使用特权

评论回复
50
wangjiahao88|  楼主 | 2019-6-18 17:22 | 只看该作者
    在建立芯片时钟的过程中,由于定时器等外设的正常运行依赖于挂靠在APB1, APB2总线上
的外设时钟,且该时钟接口为了节能的需要默认为关闭状态,因此系统初始化AHB, APB1, APB2
总线时钟之外,还需将APBI,APB2时钟连接到所需使用的外设上。所需开启的外设时钟包括ADC1,
ADC2, T工M2, T工M4, AF工0, GP工OA, GP工OB, GP工OC, GP工OD, GP工OF, USARTI, USART3, UART4,
UART5。
    STM32F103ZET6提供了一个优秀的嵌套中断向量管理器NV工C,可实现256个中断优先级。为
了更好地管理大量中断,NV工C还支持优先级分组,包括抢占式优先级组和次要优先级组。因此
在NV工C初始化中,需要为外设中断设置中断通道、优先级分组、优先级级别。
    STM32F103ZET6共有112个工0口,通过功能复用可实现多种外设输入的功能。在外设功能初
始化之前,必须先为外设可能用的工0进行功能初始化,将其配置为外设的功能引脚。
    在完成以上基本的硬件初始化过程后,即可针对具体的外设功能进行具体的工作模式初始
化,本文中用到的外设包括GP工0, T工M, USART, ADCo

使用特权

评论回复
51
wangjiahao88|  楼主 | 2019-6-18 17:22 | 只看该作者
    在变频调速系统中,变频器作为MODBUS从节点,而STM32F103ZET6作为主节点负责
变频调速的功能控制。因此本文中变频调速系统为基于MODBUS协议的主节点程序实现。
    在外设初始化中,首先,MODBUS协议的硬件链路层是基于串行链路的,因此使用
STM32F103ZET6的USART3以便与F2000-G进行串行通信,F2000-G要求采用的通信参数为:
9600kbps的波特率,8位数据位,2位停止位、无奇偶校验。USART3进行数据收发时,可以
使用查询法和中断法两种方法,由于嵌入式系统对于需要主动发送的请求帧的发送时刻、数据
帧内容、数据帧长度均是已知,因此MODBUS请求帧的发送采用查询法具有代码简单、操作
方便的优点;而F2000-G发送的应答帧的具体的应答时刻、应答帧长度对于嵌入式软件是未知
的,为了能及时准确地接收到应答数据,并保证数据帧接收的效率,MODBUS应答帧的接收必
须采用中断法。其次,由于MODBUS RTU采用时问标记的方式进行协议帧的起始判定,所以
需要定时器TIMS作为起始定时器判定数据帧的结束,而MODBUS RTU中T3.5在工程应用通
常取4个字符发送时问,因此设置TIMS的溢出时问为4ms。再次,为了处理可能的总线延迟
等通信故障,程序上使用系统定时器SYSTICK作超时判定,考虑到变频器动作时问,以及一
定的通信延迟,以200ms为时问阑值。若在STM32F103ZET6发出请求的操作200ms内,F2000-G
无应答,则认为本次通信失败,不再继续监听变频器的应答数据。最后由于采用了半双工通信,
因此需要使用GPIO 1对总线上的通信方向进行软件控制。
    在通信过程中,主节点将变频调速操作封装成PDU/ADU作为请求帧通过串行口U SART3
发送出去后,开始监听从节点变频器的应答消息,接收到完整的变频器应答帧后,变频调速软
件对应答帧进行校验处理,以分析变频调速的操作失败或成功。图4.8为变频调速的软件流程。

使用特权

评论回复
52
wangjiahao88|  楼主 | 2019-6-18 17:23 | 只看该作者

使用特权

评论回复
53
wangjiahao88|  楼主 | 2019-6-18 17:23 | 只看该作者
    在发送数据前,软件必须将所需的操作封装成标准的MODBUS协议帧才能成功进行发送,
即MODBUS协议的编码。由前所述,数据协议单元PDU包括功能码和数据码。例如,读取保
持寄存器中当前二进制值的功能号为03 H,对应的所欲读取的保持寄存器地址即为PDU的数据
码。因此PDU的封装可以归纳为将操作类型和操作参数作为参数封装成PDU o
    MODBUS中使用了CRC16作为冗余校验,按照循环冗余检验算法,使用标准的16位生成
多项式可对任意长度的信息字段校验出一个16位的校验码。其程序流程可描述如下}zs}
    1)初始化一个16位寄存器,所有位进行置1;
    2)该16位寄存器与待校验数据串中第1个字节的数据进行异或,结果存回该寄存器;
3)该16位寄存器右移一位;
4)若该寄存器右移移出位为1,则与校验多项式OAOOIH异或,否则重复步骤3;
5)重复步骤3、步骤4直到该字节的8位数据均处理完毕;
6)取数据串中下一个数据与该16位数据进行异或结果存回寄存器;
7)重复步骤3到步骤6,直到待校验数据串中所有的字节数据均处理完毕;
8)该16位寄存器中数据即CRC 16的最终校验结果,加至数据帧末端。

使用特权

评论回复
54
wangjiahao88|  楼主 | 2019-6-18 17:24 | 只看该作者

使用特权

评论回复
55
wangjiahao88|  楼主 | 2019-6-18 17:25 | 只看该作者

使用特权

评论回复
56
wangjiahao88|  楼主 | 2019-6-18 17:26 | 只看该作者
    例如,欲启动电机进行无损探伤试验时,程序对F2000-G的2000H处寄存器写入状态字
OOO1H,启动电机正转运行。通信记录如下:
    主节点STM32F 103ZET6通过变频器启动电机发送:O1 06 20 00 00 O1 43 CA;
    如果从节点F2000-G启动电机成功正常则应答:O1 06 20 00 00 O1 43 CA;
    当STM32F103ZET6正确读取完应答帧并校验成功后,即可判断变频器已成功启动交流电
机,机械试验系统开始运行并逐步加速到目标转速。
    在变频器使用前,需要先设置交流电机的参数,再启动变频器进行空载条件下的电气参数
测量,步骤如下:
    1.检查变频器与交流电机配电正常,按下“方式键”进入编程模式;
    2.在变频器0801H地址处写入数值012CH,设置电机功率3.0K+;
    3.在0802H地址处写入数值OEDBH,设置电机额定电压380V;
    4.在0803H地址处写入数值02DH,设置电机额定电流4.5A;
    5.在0804H地址处写入数值08H,设置电机级数为8级;
    6.在0805H地址处写入数值02DOH,设置电机额定转速75 Orpm ;
    7.在0800H地址处写入数值O1H,启动电机的旋转式参数测量;
    这样,变频器就会白动的根据交流电机的额定参数在空载条件下进行详细的电气参数测量,
获得定了电阻、转了电阻、漏感抗、互感抗等参数以便更好地进行交流电机的控制。完成空载
电气测量、空载试运行、带负载试运行后,变频器F2000-G即可正常地驱动交流电机
YZP 132M2-8。为了使嵌入式系统能与变频器进行正常地通信,需要设置变频器的控制方式,
包括:在0106H地址处写入O1H,设置变频器为矢量控制方式;在变频器0200H, 0201H地址
处写入数值03 H,设置为MODBUS启动方式和停机方式。完成以上工作后,嵌入式变频调速
系统就可以正常地工作了。

使用特权

评论回复
57
wangjiahao88|  楼主 | 2019-6-18 17:26 | 只看该作者
1.测周期法
    通过测量两次的相邻转速脉冲之问的时问之差,从而求得转速脉冲信号的周期。这种方法
要求计时器的计时刻度远小于脉冲信号的周期,适用于低频信号的测量。
2.测频率法
    通过在一段固定时问内,计数转速脉冲的个数,从而求得转速脉冲的频率。这种方法要求
被测脉冲的周期远小于计时器的定时时问,适用于高频信号的测量。
    由于机械轴的旋转频率相对于定时器的计时频率较低,因此转速测量应该采用测周期法。
通常地,测周期法采用由转速脉冲信号触发嵌入式处理器的I/O口的中断,用于启动和停止计
时定时器,从而测量两次相邻脉冲之问的时问差。而STM32F103ZET6的独特外设架构,其定
时器具有以下特点[‘8}:
    1.十六位的白动加载递加/递减计数器;
    2.一个十六位的预分频器;
    3.四个独立的通道每个通道均可工作在:输入捕获、输出比较、PWM模式、单脉冲模式;
    4.使用外部信号控制定时器和定时器互连的同步电路;
    5.多种可触发定时器中断的事件,包括:计数器向上溢出/向下溢出、计数器触发事件(计
数器启动,停止,初始化或者由内部/外部触发计数)、输入捕获、
其中,输入捕获通道模式正是针对输入脉冲信号的周期测量设计,
输出比较。
因此在STMF103ZET6

使用特权

评论回复
58
wangjiahao88|  楼主 | 2019-6-18 17:27 | 只看该作者

使用特权

评论回复
59
wangjiahao88|  楼主 | 2019-6-18 17:27 | 只看该作者

使用特权

评论回复
60
wangjiahao88|  楼主 | 2019-6-18 17:28 | 只看该作者

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则