首页 > 其他分享 >CODESYS随机动态图案验证码制作详细案例(二)

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

时间:2024-10-22 20:53:07浏览次数:8  
标签:Util 函数 验证码 图案 随机 CODESYS

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

前言:

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

<iframe allowfullscreen="true" data-mediaembed="csdn" frameborder="0" id="S3n07Nei-1729497466409" src="https://live.csdn.net/v/embed/430330"></iframe>

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

第二篇:验证码制作

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

一、库安装

1.库下载

库下载地址如下:
https://download.csdn.net/download/weixin_44166380/89909168

2.库说明

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

3.库加载

关于库的加载,可以参考上篇文章,见下连接;
https://blog.csdn.net/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.csdn.net/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;//
	onc

标签:Util,函数,验证码,图案,随机,CODESYS
From: https://blog.csdn.net/weixin_44166380/article/details/143110063

相关文章

  • 解决主机登录后台验证码不显示或访问乱码的问题
    启用PHP输出缓冲区登录主机面板。导航至PHP设置或配置文件管理。找到 php.ini 文件并编辑。启用输出缓冲区,确保以下配置项已设置:ini output_buffering=On保存 php.ini 文件。重启服务器保存配置后,重启Web服务器以使更改生效。如果使用的是......
  • Scrapy | 通过爬取豆瓣Top250电影信息来学习在中间件中应用随机请求头和代理ip
    中间件的使用1.scrapyl中间件的分类和作用1.1scrapy中间件的分类1.2scrapy中间的作用:预处理request和response对象2.下载中间件的使用方法:3.定义实现随机User-Agent的下载中间件3.1实战:爬取豆瓣Top250电影信息3.2中间件使用实现随机User-Agent4.代理ip的使用4.1思......
  • 如何使用ThinkPHP6实现验证码功能
    ​​为了增强网站安全性和防止机器人操作,验证码功能变得至关重要。以下内容将引导您了解如何在ThinkPHP6中实现验证码功能:1.安装和配置验证码库;2.设计验证码呈现方式;3.集成验证码到表单;4.服务器端验证;5.提供用户友好的提示与反馈。首先,我们从安装所需的库开始。1.安装和配......
  • 使用 OCaml 识别英文数字验证码
    环境准备确保你已安装OCaml和OPAM(OCaml包管理器)。然后安装以下库:cohttp(用于HTTP请求)ocaml-tesseract(用于OCR识别)graphics(用于图像处理)你可以通过OPAM安装这些库:bashopaminstallcohttp-lwt-unixocaml-tesseractgraphics2.下载验证码图片使用Cohttp下载......
  • 使用 D 语言识别英文数字验证码
    环境准备确保你的D语言环境已设置好,并安装以下库:vibe.d(用于HTTP请求)dlib(用于图像处理和OCR)你可以在dub.json中添加依赖:json{"dependencies":{"vibe-d":"~>0.9.0","dlib":"~>1.0.0"}}然后运行dubget安装依赖。下载验证码图片使用vibe.d下载验证码......
  • 【C语言】文件操作(2)(文件缓冲区和随机读取函数)
    文章目录一、文件的随机读取函数1.fseek函数2.ftell函数3.rewind函数二、文件读取结束的判断1.被错误使用的feof2.判断文件读取结束的方法3.判断文件结束的原因feofferror判断文件读取结束原因示例三、文件缓冲区一、文件的随机读取函数  在上一篇的文章中,我......
  • 【验证码识别专栏】大炮打麻雀 — CLIP 图文多模态模型,人均通杀 AIGC 六、九宫格验证
    前言近期有粉丝私信,不知道如何训练某讯系点选验证码,之前星球群也有不少粉丝讨论相关问题,为满足粉丝们的需求,本文将对这型验证码的训练进行讲解,文末可以下载相关的工具,包括文章配套标注工具+文章配套训练代码+部分学习数据集(少量类目,仅供学习使用,不设计成品)+六宫格推理比......
  • 使用 Swift 识别英文数字验证码
    环境准备在开始之前,请确保你的项目中已经集成了以下库:Alamofire(用于网络请求)TesseractOCRiOS(用于OCR识别)可以通过CocoaPods安装这些库,首先在你的Podfile中添加:rubypod'Alamofire','~>5.4'pod'TesseractOCRiOS','~>4.0.0'然后运行podinstall。下载验证码......
  • 使用 Ruby 识别英文数字验证码
    环境准备在开始之前,确保安装以下gem:bashgeminstallrmagickhttpartytesseract-ocr你还需要确保已经安装了TesseractOCR引擎,并配置好其路径。下载验证码图片使用HTTParty下载验证码图片并保存到本地:rubyrequire'httparty'classCaptchaDownloaderdefself.......
  • 使用 C# 识别英文数字验证码
    环境准备在开始之前,请确保你的项目中引用了以下NuGet包:TesseractRestSharp在VisualStudio中,你可以通过NuGet包管理器安装它们:bashInstall-PackageTesseractInstall-PackageRestSharp确保你已安装TesseractOCR引擎,并将其路径配置在系统环境变量中。下载验......