码垛机器人报警检测模块
时间:1753-01-01
作者:
来源:机器人在线--业界资讯
码垛机器人报警检测模块
报警检测模块的实现,主要由类SysAlarml_Monitor提供其实现,其需要继承于接口SysAlarmles_MonitorIml,同时需要调用运动控制卡层提供的对于系统IO检测的函数实现检测硬件本体的IO状态的功能。此外为了能够表示系统当前发生的报警信息,定义了数据model类AlarmType。
类SysAlarml_Monitor和接口SysAlarml_MonitorIml其实现,如图所示:

图中给出了报警检测模块主要操作方法,其有:
(1) GetAllExiInputState:系统中有诸多的通用IO,为了能够获取这些IO的状态,提供了这个函数用来获取通用输入IO状态。
(2) GetAllExoOutputState:如上述,需要获取通用IO的输出状态,所以提供这个函数来获取通用输入IO状态。
(3) GetAllSpecialInputState:系统中有一些专用的IO,例如电气启停IO、限位 IO和报警状态清除IO等,因此需要提供这个函数对系统专用IO状态进行获取。
(4) GetAllSpecialOutputState:如上述,需要获取系统专用IO的输出状态,所以提供这个函数获取专用IO输出。
(5) SetExoOutputState:系统中有时需要设定通用IO状态,以达到某种功能,所以需要提供此函数设定通用IO状态。
(6) SetSpecialOutputState:对于专用的IO也需要设定其状态,例如清除报警时需要设定系统报警IO位为低电平。所以需要提供此函数对专用IO位进行设定。
(7) SetAlarm:当系统发生报警时,此函数将会自动获取整个系统中的报警信息,并将报警信息设定入报警状态类AlarmType当中。
(8) IsAlarm:检测系统中当前是否发生报警,如果发生报警,便会自动调用SetAlarm,对系统报警信息进行设定。
在类SysAlarmles Monitor中,聚合了报警状态类AlarmType如图5-8所示,当系统发生报警时,会设定系统的报警状态进入此类中:

根据UML,类图可知其主要的属性有:
(1) LimitA P和LimitA N: A轴正负限位报警,当A轴超过系统限位时触发并置位。
(2)LimitB P和LimitB N : B轴正负限位报警,当B轴超过系统限位时触发并置位。
(3) LimitC P和LimitC N : C轴正负限位报警,当C轴超过系统限位时触发并置位。
(4) LimitD P和LimitD N: D轴正负限位报警,当D轴超过系统限位时触发并置位。
(5) Emergency A, Emergency_B、Emergency_C, Emergency_D:分别为A,B, C, D轴的紧急报警,当各轴发生紧急报警时触发并置位。
(6) DriverAlmA , DriverAlmB , DriverAlmC , DriverAlmD:分别为A, B,C, D轴的驱动报警,当各轴出现例如过载、过热等报警时触发并置位。
同时其还提供了操作属性GetWhichAlarmInfo,其主要用于发生报警时获取当前的报警实际类型和报警信息的操作。
免责声明:本网站部 分文章和信息来源于互联网,本网转载出于传递更多信息和学习之目的,并不意味着赞同其观点或证实其内容的真实性。如转载稿涉及版权等问题,请立即联系管理 员,我们会予以更改或删除相关文章,保证您的权利。对使用本网站信息和服务所引起的后果,本网站不作任何承诺。