OtoStudio可视化界面开发示例

今天在家清理电脑,在硬盘中找到了2014年刚毕业那会用 OtoStudio(CoDeSys)写的一个三轴运动控制模拟程序。

软件下载:https://download.csdn.net/download/luckydarcy/11094707

代码下载:https://download.csdn.net/download/luckydarcy/11094973


概述

代码设计:

OtoStudio可视化界面开发示例_第1张图片

OtoStudio可视化界面开发示例_第2张图片

OtoStudio可视化界面开发示例_第3张图片

界面设计:

OtoStudio可视化界面开发示例_第4张图片

界面

有下面几个界面:

OtoStudio可视化界面开发示例_第5张图片

OtoStudio可视化界面开发示例_第6张图片

OtoStudio可视化界面开发示例_第7张图片

OtoStudio可视化界面开发示例_第8张图片

OtoStudio可视化界面开发示例_第9张图片

OtoStudio可视化界面开发示例_第10张图片


效果

【登陆过程】
OtoStudio可视化界面开发示例_第11张图片

【控制过程】

OtoStudio可视化界面开发示例_第12张图片


代码

PLC_PRG

PROGRAM PLC_PRG
VAR
	checking: BOOL; (*密码检验结果*)
	warning:BOOL; (*报警状态*)
	normal:BOOL := TRUE; (*系统状态*)
	PwdWarning:BOOL:=TRUE; (*密码错误提示*)
	InitOK:BOOL; (*初始化成功与否标志*)

(*定义系统各种极限值*)

	PosMin_N:INT := -250; (*负限位最小值*)
	PosMax_N:INT := -200; (*负限位最大值*)
	PosMin_P:INT := 200; (*正限位最小值*)
	PosMax_P:INT := 250; (*正限位最大值*)

	SpeedMin:INT := 0; (*速度最小值*)
	SpeedMax:INT := 6000; (*速度最大值*)
	SpeedRTZ:INT := 5400; (*回零速度*)

	DisplacementMin:INT := 0; (*点动位移量最小值*)
	DisplacementMax:INT := 10; (*点动位移量最大值*)

	Speed:REAL := 0; (*移动速度*)
	Displacement:REAL := 0; (*点动位移*)

	StartOK: BOOL;
	CheckLimit: LIMIT_CHECK;

	LEDAxisX:BOOL; (*X轴状态指示*)
	LEDAxisY:BOOL; (*Y轴状态指示*)
	LEDAxisZ:BOOL; (*Z轴状态指示*)

	LEDHandMove:BOOL; (*手动方式状态指示*)
	LEDClickMove:BOOL; (*点动方式状态指示*)
	LEDRetToZero:BOOL; (*回零方式状态指示*)


	AlarmType: INT;		(*记录报警状态*)
	RTZ_retain: BOOL;	(*记录回零状态*)

	HandP_TON: TON;
	HandN_TON: TON;
	MH_OFF: BOOL;
	MH_ON: BOOL;
	RTZ_TON: TON;
	normal2: BOOL;	(*显示故障清除情况*)
	LimitStatus: BOOL;	(*记录是否有超出限位的情况,保留使用*)
	CheckPwd: BOOL;	(*密码输入确定按钮下降沿触发*)

	(*按键下降沿触发处理*)
	SBAxisX_FT: F_TRIG;
	SBAxisY_FT: F_TRIG;
	SBAxisZ_FT: F_TRIG;
	SBClickMove_FT: F_TRIG;
	SBHandMove_FT: F_TRIG;
	SBRetToZero_FT: F_TRIG;
	Positive_RT: R_TRIG;
	Negative_RT: R_TRIG;
	PwdButton_FT: F_TRIG;
	WarningBtn_FT: F_TRIG;
END_VAR

VAR_INPUT
	PwdButton: BOOL; (*输入密码确定按钮*)
	WarningBtn:BOOL; (*报警框确定按钮*)
	start: BOOL; (*上电按钮*)
	stop:BOOL; (*急停按钮*)

	SBHandMove:BOOL; (*手动方式按钮*)
	SBClickMove:BOOL; (*点动方式按钮*)
	SBRetToZero:BOOL; (*回零方式按钮*)

	SBAxisX:BOOL; (*X轴使能按钮*)
	SBAxisY:BOOL; (*X轴使能按钮*)
	SBAxisZ:BOOL; (*X轴使能按钮*)

	positive:BOOL; (*正向运动按钮*)
	negative:BOOL; (*负向运动按钮*)

	password: STRING(16) := ' '; (*记录登陆密码*)
	AlarmInfo:STRING(80) := 'Everybody up !'; (*记录报警信息*)
END_VAR
VAR_OUTPUT

END_VAR

。。。太多了,不贴代码啦,需要的自己下载吧!

你可能感兴趣的:(3D打印)