基于实时操作系统驻留的无刷滚筒电机控制方法

文档序号:31049955发布日期:2022-08-06 06:42阅读:122来源:国知局
基于实时操作系统驻留的无刷滚筒电机控制方法
基于实时操作系统驻留的无刷滚筒电机控制方法
【技术领域】
1.本发明涉及电机控制管理领域,尤其涉及一种基于实时操作系统驻留的无刷滚筒电机控制方法。


背景技术:

2.随着嵌入式应用需求的复杂化和微控制器性能的提高,实时操作系统以其良好的实时性和可靠性受到广泛关注。实时操作系统具备较强的专业性和独立性,其与软硬平台高度相关,不同系统软件难以移植和复用。现有的无刷滚筒电机都是采用单一的操作系统进行控制,其无法对无刷滚筒电机进行有效的后期维护和升级完善,降低无刷滚筒电机的控制稳定性和可靠性。


技术实现要素:

3.本发明的目的在于提供一种基于实时操作系统驻留的无刷滚筒电机控制方法,其将无刷滚筒电机对应的终端软件划分为中断线和任务线;利用中断线与无刷滚筒电机连接的上位机对应的用户软件进行数据交互,以及控制无刷滚筒电机的相位运转状态;以及利用任务线移植引入实时操作系统后,将任务线分割为主线程、pid线程、保护线程、通信线程、时间模式线程和位置模式线程,再通过上述分割得到的线程对不同电机控制任务进行处理,上述控制方法通过中断线和任务线分别对无刷滚筒电机进行分立控制,并利用任务线移植可不同的实时操作系统,来完成对无刷滚筒电机快捷控制,便于对电机进行有针对性的后期维护和升级完善,提高无刷滚筒电机的控制稳定性和可靠性。
4.本发明的目的是通过以下技术方案实现:
5.一种基于实时操作系统驻留的无刷滚筒电机控制方法,其包括如下步骤:
6.步骤s1,将无刷滚筒电机对应的终端软件划分为中断线和任务线;
7.步骤s2,利用所述中断线与无刷滚筒电机连接的上位机对应的用户软件进行数据交互,以及控制无刷滚筒电机的相位运转状态;
8.步骤s3,利用所述任务线移植引入实时操作系统后,将所述任务线分割为主线程、pid线程、保护线程、通信线程、时间模式线程和位置模式线程;再通过上述分割得到的线程对不同电机控制任务进行处理;
9.步骤s4,根据每个线程对不同电机控制任务的处理结果,通过上位机实时显示所述电机控制任务的处理状态。
10.在其中一实施例中,在所述步骤s2中,利用所述中断线与无刷滚筒电机的上位机对应的用户软件进行数据交互,从而控制无刷滚筒电机的相位运转状态具体包括:
11.将所述中断线分割为串口中断线程和定时器中断线程;
12.利用所述串口中断线程与所述上位机的用户软件进行交互,从而接收来自所述上位机的数据信息;
13.利用所述定时器中断线程,根据来自所述上位机的数据信息包含的电机位置信
号,控制无刷滚筒电机进行电机换相运转。
14.在其中一实施例中,在所述步骤s3中,利用所述任务线移植引入实时操作系统具体包括:
15.在所述任务线对应的芯片搭建实时操作系统驻留框架后,再利用所述实时操作系统驻留框架移植引入rt-thread实时操作系统;其中,搭建实时操作系统驻留框架包括对所述芯片进行启动文件修改、链接文件配置、驱动构件封装和中断继承处理。
16.在其中一实施例中,所述步骤s3还具体包括,利用所述主线程对无刷滚筒电机的外设进行初始化处理,其过程为:
17.指示所述主线程开始工作,关闭无刷滚筒电机的总中断,对所述任务线对应的芯片的gpio构件、uart构件和adc构件进行初始化处理;
18.对无刷滚筒电机进行系统初始化,并中断无刷滚筒电机的外设的使能,再开启无刷滚筒电机的总中断,从而完成对无刷滚筒电机的外设的初始化处理。
19.在其中一实施例中,所述步骤s3还具体包括,利用所述pid线程对无刷滚筒电机进行电机闭环控制,其过程为:
20.指示所述pid线程开始工作,并对所述pid线程进行参数初始化;
21.当无刷滚筒电机开关使能后,利用所述pid线程对无刷滚筒电机进行电机位置和电机转速计算;
22.根据所述电机位置和电机转速计算的结果,调整无刷滚筒电机的pwm占空比,从而完成对无刷滚筒电机的电机闭环控制。
23.在其中一实施例中,所述步骤s3还具体包括,利用所述保护线程对无刷滚筒电机进行电机运转保护,其过程为:
24.指示所述保护线程开始工作,当无刷滚筒电机开关使能后,采集无刷滚筒电机的工作电流数据、工作电压数据和工作温度数据;
25.对所述工作电流数据、所述工作电压数据和所述工作温度数据进行滤波处理;
26.对所述工作电流数据进行分析处理,判断无刷滚筒电机当前是否处于过流工作状态;
27.对所述工作电压数据进行分析处理,判断无刷滚筒电机当前是否处于过压工作状态或欠压工作状态;
28.对所述工作温度数据进行分析处理,判断无刷滚筒电机当前是否处于过热工作状态;
29.若无刷滚动电机当前处于过流工作状态、过压工作状态、欠压工作状态或过热工作状态,则关闭无刷滚筒电机。
30.在其中一实施例中,所述步骤s3还具体包括,利用所述通信线程实现无刷滚筒电机与上位机的信息处理和交互;
31.以及,利用所述时间模式线程和所述位置模式线程分别对无刷滚筒电机进行时间模式控制和位置模式控制。
32.在其中一实施例中,在所述步骤s3中,利用所述时间模式线程对无刷滚筒电机进行时间模式控制,其过程为:
33.利用所述时间模式线程,控制无刷滚筒电机以指定的速度和方向持续运行,直到
达到预先设定的运行时间位置;
34.和/或,
35.利用所述时间模式线程,控制无刷滚筒电机以指定周期间隔和周期总数进行运行。
36.在其中一实施例中,在所述步骤s3中,利用所述位置模式线程对无刷滚筒电机进行位置模式控制,其过程为:
37.利用所述位置模式线程,控制无刷滚筒电机以指定的速度和方向持续运行预定距离。
38.在其中一实施例中,在所述步骤s4中,根据每个线程对不同电机控制任务的处理结果,通过上位机实时显示所述电机控制任务的处理状态具体包括:
39.利用所述中断线向上位机的用户软件反馈所述主线程、所述pid线程、所述保护线程、所述通信线程、所述时间模式线程和所述位置模式线程对相应的电机控制任务的处理进度结果,从而使上位机实时显示所述电机控制任务的处理状态。
40.与现有技术相比,本发明具有如下有益效果:
41.本技术提供的基于实时操作系统驻留的无刷滚筒电机控制方法,其将无刷滚筒电机对应的终端软件划分为中断线和任务线;利用中断线与无刷滚筒电机连接的上位机对应的用户软件进行数据交互,以及控制无刷滚筒电机的相位运转状态;以及利用任务线移植引入实时操作系统后,将任务线分割为主线程、pid线程、保护线程、通信线程、时间模式线程和位置模式线程,再通过上述分割得到的线程对不同电机控制任务进行处理,上述控制方法通过中断线和任务线分别对无刷滚筒电机进行分立控制,并利用任务线移植可不同的实时操作系统,来完成对无刷滚筒电机快捷控制,便于对电机进行有针对性的后期维护和升级完善,提高无刷滚筒电机的控制稳定性和可靠性。
【附图说明】
42.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:
43.图1是本技术提供的基于实时操作系统驻留的无刷滚筒电机控制方法的流程示意图。
【具体实施方式】
44.为使本技术的上述目的、特征和优点能够更为明显易懂,下面结合附图,对本技术的具体实施方式做详细的说明。可以理解的是,此处所描述的具体实施例仅用于解释本技术,而非对本技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本技术相关的部分而非全部结构。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本技术保护的范围。
45.本技术中的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步
骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
46.在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
47.请参阅图1所示,本技术一实施例提供的基于实时操作系统驻留的无刷滚筒电机控制方法,基于实时操作系统驻留的无刷滚筒电机控制方法包括如下步骤:
48.步骤s1,将无刷滚筒电机对应的终端软件划分为中断线和任务线;
49.步骤s2,利用中断线与无刷滚筒电机连接的上位机对应的用户软件进行数据交互,以及控制无刷滚筒电机的相位运转状态;
50.步骤s3,利用任务线移植引入实时操作系统后,将任务线分割为主线程、pid线程、保护线程、通信线程、时间模式线程和位置模式线程;再通过上述分割得到的线程对不同电机控制任务进行处理;
51.步骤s4,根据每个线程对不同电机控制任务的处理结果,通过上位机实时显示电机控制任务的处理状态。
52.上述控制方法通过中断线和任务线分别对无刷滚筒电机进行分立控制,这样能够对无刷滚筒电机进行不同功能方面的控制,提高对无刷滚筒电机的控制灵活性和专门性;此外利用任务线移植可不同的实时操作系统,来完成对无刷滚筒电机快捷控制,便于对电机进行有针对性的后期维护和升级完善,提高无刷滚筒电机的控制稳定性和可靠性。
53.可选地,在步骤s2中,利用中断线与无刷滚筒电机的上位机对应的用户软件进行数据交互,从而控制无刷滚筒电机的相位运转状态具体包括:
54.将中断线分割为串口中断线程和定时器中断线程;
55.利用串口中断线程与上位机的用户软件进行交互,从而接收来自上位机的数据信息;
56.利用定时器中断线程,根据来自上位机的数据信息包含的电机位置信号,控制无刷滚筒电机进行电机换相运转。
57.将中断线区分为串口中断线程和定时器中断线程,这样能够利用不同线程分别实现无刷滚筒电机与上位机之间的数据交互通信功能和换相运转切换功能,有效避免上位机与无刷滚筒电机在通信控制过程中发生数据串扰的情况。
58.可选地,在步骤s3中,利用任务线移植引入实时操作系统具体包括:
59.在任务线对应的芯片搭建实时操作系统驻留框架后,再利用实时操作系统驻留框架移植引入rt-thread实时操作系统;其中,搭建实时操作系统驻留框架包括对芯片进行启动文件修改、链接文件配置、驱动构件封装和中断继承处理。
60.在实际操作中,可以在任务线对应的gd32f450zit6芯片搭建实时操作系统驻留框架,再基于实时操作系统驻留框架移植引入rt-thread实时操作系统。其中在搭建实时操作系统驻留框架中对芯片进行启动文件修改,比如根据芯片中断向量号顺序来调整或增加相应的中断向量表项和中断服务函数弱定义,这样能够保证芯片启动文件的汇编语法的兼容性;而对芯片进行链接文件配置,比如根据链接文件配置芯片的存储空间;而对芯片进行驱
动构件封装,比如遵循嵌入式软件设计原则,分别完成芯片的基础构件、应用构件和软件构件设计;而对芯片进行中断继承处理,比如对芯片的扇区进行代码擦除和重写操作。通过上述操作,能够便于对芯片快速移植rt-thread实时操作系统。
61.可选地,步骤s3还具体包括,利用主线程对无刷滚筒电机的外设进行初始化处理,其过程为:
62.指示主线程开始工作,关闭无刷滚筒电机的总中断,对任务线对应的芯片的gpio构件、uart构件和adc构件进行初始化处理;
63.对无刷滚筒电机进行系统初始化,并中断无刷滚筒电机的外设的使能,再开启无刷滚筒电机的总中断,从而完成对无刷滚筒电机的外设的初始化处理。
64.通过上述方式利用主线程对无刷滚筒电机的外接设备进行初始化处理,能够在外接设备发生故障时对初始化重启,确保外接设备工作的稳定性和可靠性。
65.可选地,步骤s3还具体包括,利用pid线程对无刷滚筒电机进行电机闭环控制,其过程为:
66.指示pid线程开始工作,并对pid线程进行参数初始化;
67.当无刷滚筒电机开关使能后,利用pid线程对无刷滚筒电机进行电机位置和电机转速计算;
68.根据电机位置和电机转速计算的结果,调整无刷滚筒电机的pwm占空比,从而完成对无刷滚筒电机的电机闭环控制。
69.通过上述方式利用pid线程对无刷滚筒电机进行稳定控制,只有当无刷滚筒电机使能时,pid线程的pid算法才开始进行调节和控制,同时根据电机运转模式的不同,相应选择不同的控制方式。在在自动模式和时间模式下,只要求电机以稳定的速度运转,所以进行速度闭环控制,通过速度环的计算最终转换成可调节的占空比值,实现电机的平稳运转。
70.可选地,步骤s3还具体包括,利用保护线程对无刷滚筒电机进行电机运转保护,其过程为:
71.指示保护线程开始工作,当无刷滚筒电机开关使能后,采集无刷滚筒电机的工作电流数据、工作电压数据和工作温度数据;
72.对工作电流数据、工作电压数据和工作温度数据进行滤波处理;
73.对工作电流数据进行分析处理,判断无刷滚筒电机当前是否处于过流工作状态;
74.对工作电压数据进行分析处理,判断无刷滚筒电机当前是否处于过压工作状态或欠压工作状态;
75.对工作温度数据进行分析处理,判断无刷滚筒电机当前是否处于过热工作状态;
76.若无刷滚动电机当前处于过流工作状态、过压工作状态、欠压工作状态或过热工作状态,则关闭无刷滚筒电机。
77.通过上述方式利用保护线程对无刷滚筒电机进行工作电流、工作电压和工作温度的实时监测,及时发现电机运行故障,避免电机的电路烧毁和外接设备损坏,并且在发现出现异常时会紧急关闭电机来停止系统运转,并向上位机反馈当前故障信息,确保无刷滚筒电机的正常运行。
78.可选地,步骤s3还具体包括,利用通信线程实现无刷滚筒电机与上位机的信息处理和交互;
79.以及,利用时间模式线程和位置模式线程分别对无刷滚筒电机进行时间模式控制和位置模式控制。
80.通过上述方式利用通信线程负责与上位机进行实际的数据交互,确保无刷滚筒电机的正常数据交互通信。
81.可选地,在步骤s3中,利用时间模式线程对无刷滚筒电机进行时间模式控制,其过程为:
82.利用时间模式线程,控制无刷滚筒电机以指定的速度和方向持续运行,直到达到预先设定的运行时间位置;
83.和/或,
84.利用时间模式线程,控制无刷滚筒电机以指定周期间隔和周期总数进行运行。
85.通过上述方式利用时间模式线程对无刷滚筒电机进行运行时间的控制,保证无刷滚筒电机能够按照预定的时间规则工作。
86.可选地,在步骤s3中,利用位置模式线程对无刷滚筒电机进行位置模式控制,其过程为:
87.利用位置模式线程,控制无刷滚筒电机以指定的速度和方向持续运行预定距离。
88.通过上述方式利用位置模式线程对无刷滚筒电机进行运行位置的控制,保证无刷滚筒电机能够按照预定的运行距离规则工作。
89.可选地,在步骤s4中,根据每个线程对不同电机控制任务的处理结果,通过上位机实时显示电机控制任务的处理状态具体包括:
90.利用中断线向上位机的用户软件反馈主线程、pid线程、保护线程、通信线程、时间模式线程和位置模式线程对相应的电机控制任务的处理进度结果,从而使上位机实时显示电机控制任务的处理状态。
91.利用中断线向上位机的用户软件反馈不同电机控制任务的处理进度结果,这样便于用户通过上位机实时和准确地了解不同电机控制任务的处理状态,确保无刷滚筒电机的工作可靠性。
92.上述仅为本发明的一个具体实施方式,其它基于本发明构思的前提下做出的任何改进都视为本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1