CODESYS随机动态图案验证码制作详细案例(二)

#使用CODESYS软件模仿网页端动态图案验证码的制作详细案例#

前言:

上篇随机数的测试验证,是我们作为图案验证码的基础功能测试,实际上在CODESYS中,除了OSCAT库,在SM3 Shared库中,也有一个RndI_Range的函数,不过,在测试的过程中无法正常使用,如果哪位高手有实际案例可以发表在评论区。
本篇继续在测试正常的基础上,编写程序和设计图案界面,在设计方案时,我也是上网参考了一些验证码形式,排除掉那些各种变态的验证码,本次案例我们还是回归到“正常”的图形验证码吧,因为那种逻辑和审美异常的图案验证码,也着实不符合应用到工业项目中。所以,本次我们做一个简单的案例,随机四个字符(文字或大小写字母)及背景图案,且四个字符颜色随机;

CODESYS随机动态图案验证码制作详细案例(二)

第二篇:验证码制作

加载Util库,编写随机数程序,设计验证码UI界面,并验证随机图案和文字效果。为了方便理解,思维图如下:
在这里插入图片描述

一、库安装

1.库下载

库下载地址如下:
https://download.youkuaiyun.com/download/weixin_44166380/89909168

2.库说明

Util库提供生成器模式和点的数据类型。并提供以下用例的功能块和函数:模拟监控、BCD转换、位/字节函数、控制器、函数操作符、数学函数和信号。本次我们所使用的是一个WORD_AS_STRING的函数,如上设计思维图,用来转换输出ASCII码字符形式。

3.库加载

关于库的加载,可以参考上篇文章,见下连接;
https://blog.youkuaiyun.com/weixin_44166380/article/details/143053480?spm=1001.2014.3001.5501
实际上,Util本身在CODESYS安装时自带的,那么当我们知道某个函数时,怎么知道它是属于哪个库,且如何安装呢?比如以函数WORD_AS_STRING为例。
(1)打开CODESYS帮助
在这里插入图片描述
(2)输入并查找这个库函数
在这里插入图片描述
(3)点这个匹配到的函数
在这里插入图片描述
(4)在函数界面,点这个Docs
在这里插入图片描述
(5)如下图,Title内的Util就是本函数的库文件名称。
在这里插入图片描述
(6)添加这个库,在列表里面找到Util;
在这里插入图片描述
看起来很麻烦的样子,实际上应该是最简单的方式了,有的同学应该有疑问,为什么不在添加库里面直接搜索呢,这个我实测过,不知道是不是安装问题,无法搜索,我的版本是CODESYS V3.5 SP20,如果有哪位大神有解决方案,也可以在评论区发表哈。

4.库指令

关于这个指令用法比较简单,参考ASCII码,输入十进制的数字,对应的就是ASCII码了。
在这里插入图片描述
在这里插入图片描述

二、程序编写

毫无保留,直接上源码,请珍藏。

1.数据类型

先创建一个名为“CodeColorUnion”的数据类型;

TYPE CodeColorUnion :
UNION
	B:ARRAY[0..3] OF BYTE;
	W:DWORD;
END_UNION
END_TYPE

用途:字符颜色元素,关于这个文字相关变量,比如颜色元素的动态变换,可以参考以下我的另一篇文章,大神略过;
https://blog.youkuaiyun.com/weixin_44166380/article/details/142923368?spm=1001.2014.3001.5501

2.变量参数

参见注释,有看不明白的,评论区见哈。

PROGRAM PLC_PRG
VAR
	firstLast: REAL;//首次种子
	firstOn:BOOL;//首次启动
	wordLast:ARRAY[0..3] OF REAL;//字符种子	
	rdmReturnChs: INT;//随机选择值
	rdmReturnPic:INT;//随机背景图
	pictureID:STRING;//图片池ID
	equalCount: REAL;//
	probability: REAL;//
	onceExecute: BOOL;//单次触发
	untilExecute: BOOL;//连续触发
	codeByte:ARRAY[0..3]<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值