整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

PLC程序密码破解方法,并总结了详细的解密过程

PLC程序密码破解方法,并总结了详细的解密过程

LC程序解密,密码破解方法步骤分析,有关plc的解决方法,在进行plc编程的过程中,有时需要plc解密的一些操作,这里说一说plc的解密方法,并总结了详细的解密过程,有需要的朋友参考下。

PLC解密方法

1、使用串口调试器

2、设置好有关参数。

设置串口:COM1,波特率:9600,数据位:7,校验:E偶,停止位:1

输入:输入EHX,显示:显示ASC

确定三菱PLC型号。根据PLC型号选择在串口调试程序的 文本 中输入对应字符串。

PLC型号 对应字符串

FX2 /STX0700808/ETX6A

FX2N /STX0300808/ETX66

FX2_EPROM /STX0800808/ETX6B

FXON/FXOX /STX0800808/ETX6B

FX1N/FX1X /STX0800808/ETX6B

3、发送后在接收框中显示的字符串就是plc的密码。

如果看不出来的话,将这些字符串拷贝到 HEX格式 中。发送一次看看。(发送前记得先断开PLC)

建议你自己设置一个密码,然后用这个方法读取一次看看,以后就知道是怎么回事了。

密码字符:0-9,A-F。

A系列:

发送:A2 07 00 FF 02 05 AE 00 08 C3

接收:0B 00 FF 02 00 AA 77 55 BB EF CD AB A4 00

密码:ABCDEF

发送:A2 07 00 FF 02 05 AE 00 08 C3

接收:0B 00 FF 02 00 AA 77 55 BB C1 B1 A1 A4

密码:A1B1C1

分析:密码为返回字符中BB至A4之间的字符,以每2字符为单位,从右往左读出。

FX系列:

返回:34 31 34 32 34 33 34 34 34 35 34 36 34 31 34 32

密码:ABCDEFAB

分析:接收到的是ASC码,对应的字符为 4 1 4 2 4 3 4 4 4 5 4 6 4 1 4 2,以每2字符为单位组合,即

41 42 43 44 45 46 41 42,

再译为对应的字符即为 ABCDEFAB.

1、在发送字符栏输入下面的字符串后点发送;

02 30 38 30 30 38 30 38 03 36 42

3、返回一串16进制的ASCII码,30H为数字0,31H为数字1,以此类推;

例:02 30 38 30 30 38 30 38 03 36 42

( 37ms )

/STX4236353433323130/ETX41

密码是:B6543210 《42=B》

以上就是PLC解密方法及解密过程的全部内容,希望对大家有所帮助。

TypeScript 中的整形和浮点数类型都是 number,这点和 JavaScript 是一样的,比如:十进制、二进制、八进制和十六进制的类型都是 number。

let decAge: number=22; let hexAge: number=0x0016; let binaryAge: number=0b10110; let octalAge: number=0o026; // 以上变量使用 (number).toString(10) 转换为十进制都为 22 复制代码

可使用 (number).toString(进制) 将数字转换为任意进制的类型。


字符串 → string

JavaScript 一样,字符串的值使用单引号或者双引号包裹:

let myName: string="编程三昧"; let myHomepage: string=`example.com/${myName}`; 复制代码


数组

TypeScript 中定义数组的方式有两种。

第一种是元素类型后面接上 [],表示由此类型元素组成的一个数组:

let arr: number[]=[1, 2, 3, 4]; // 如果在数组中加入其他元素会报错 复制代码

第二种是使用数组泛型定义数组:

let arr1: any[]=[1, "2", 3, "4"]; // 这个数组中可以假如任意类型的元素 复制代码


元组 Tuple

元组类型允许表示一个已知元素数量和类型的数组,各元素的类型不必相同。

let arr2:[number, string, number]=[1,"2",3]; // 若果写成 [1,2,3] 会报错 复制代码

元素是严格规定了数组的长度和每个位置的元素类型,并且在赋值时需要严格对应,否则会报错。


枚举

enum类型是对JavaScript标准数据类型的一个补充。像C#等其它语言一样,使用枚举类型可以为一组数值赋予友好的名字。

enum Color {Red, Green, Blue} let c: Color=Color.Green; 复制代码

默认情况下,从0开始为元素编号。你也可以手动地指定成员的数值。例如,我们将上面的例子改成从 1开始编号:

enum Color {Red=1, Green, Blue} let c: Color=Color.Green; 复制代码

或者,全部都采用手动赋值:

enum Color {Red=1, Green=2, Blue=4} let c: Color=Color.Green; 复制代码

枚举类型提供的一个便利是你可以由枚举的值得到它的名字。例如,我们知道数值为2,但是不确定它映射到Color里的哪个名字,我们可以查找相应的名字:

enum Color {Red=1, Green, Blue} let colorName: string=Color[2]; console.log(colorName); // 显示'Green'因为上面代码里它的值是2

上一节,我们已经把gitlab、jenkins、harbor、k8s都已经搭建好了,这一节我们来编写jenkins的pipline将我们的服务通过jenkins完整的发布到k8s中。


2、部署中间件

将mysql、redis、es等部署到k8s之外 , 模拟用作线上独立环境(至于线上你想把某些中间件部署到k8s内部这个自行处理,本次重点是如何将go-zero开发的微服务部署到k8s集群内部),这里我就直接使用项目下的docker-compose-env.yaml了,把所有依赖的第三方中间件环境直接安装在srv-data.com(192.168.1.181)这台服务器,前提是这台服务器已经安装好docker、docker-compose。

登陆到 192.168.1.181

$ mkdir data && cd data && vim docker-compose.yml$ docker-compose up -d$ docker-compose ps #查看确认


3、独立配置

将每个服务的配置都独立出来,统一放在一个git仓库,这样只给一个人线上仓库的权限,如果线上配置有变直接修改这个仓库的文件,在jenkins做cd的时候,会先拉取代码再拉取对应服务的配置自动构建,具体可以看后面的pipline。

【问】为什么不用配置中心?

1)修改db、redis等需要重启服务,但是有一些配置又不需要重启服务,运维又要去记,记混了比较容易造成线上事故

2)方便回滚。我们发新版本到线上,并且又改了新版本配置。这时候线上用户反馈有问题,线上需要快速回滚的话,如果我们使用将文件构建到镜像中,直接使用k8s一行命令就可以将上一个版本代码加配置直接回滚回来。如果使用了配置中心,回滚了代码,还要将上个版本的配置去配置中心改回来,很麻烦。

习西门子PLC的朋友们对于西门子的S7-PLCSIM软件都不陌生,当我们安装了该软件后,在STEP7或者博图的面板中就多出了一个仿真的按钮,点击该按钮,就会调出仿真软件S7-PLCSIM软件,将当前的PLC项目下载进去。启动该仿真PLC,就可以在线查看程序状态,并可以模拟各种条件,进行PLC软件的调试。

S7-PLCSIM存在一个问题,它采用了内部协议与STEP7或者博图通讯,不能对外通讯,也就是说,外部的软件不能像访问真实的PLC一样,访问该仿真软件。学习HMI编程、PLC通讯的朋友就只能购买硬件PLC一条路了吗?

在热心网友绍兴-胡克(969885519)的推荐和帮助下,本人尝试了一个叫做NetToPLCsim的小免费软件,可以实现S7-PLCSIM与外部的以太网通讯。下面简单介绍一下使用的步骤:

1、启动STEP7或者博图软件;

2、用管理员权限打开NetToPLCsim软件(暂不要配置),如果要求停用西门子的服务,则点击同意,以便获取102端口的使用权;(该步骤与手册不同,是众多网友实践的经验)

3、启动PLCSIM软件,下载带有以太网通讯的功能的PLC项目(带有CP网卡,或者CPU自带以太网);

4、在NetToPLCsim里点击“Add”;

5、在站点配置对话框里,点击“Network IP Address”旁的“...”来选择现有的网络,选择一个将来访问该PLC的IP地址;

6、点击“Plssim IP Address”旁的“...”来选择刚才下载的PLC地址;

7、设置CPU的框架号和槽号,注意与硬件配置要一致;

8、关闭对话框,点击“Start server”,确认“Port 102 OK”;

9、用外部软件访问该PLC,进行测试,注意选择红圈里的地址,而不是PLCSIM的地址:

于PLC话题,很多电源工程师工作中会遇到不同的问题。其实找到问题的根源,才能对症下药。下面给大家分享几篇不错的文章,供大家学习~


200smart PLC 不同类型CPU区别

本文介绍西门子S7-200smart PLC不同类型CPU的区别。

西门子S7-200smart PLC 标准CPU的代码一般为ST XX或者SR XX,其中ST/SR表示CPU自带的数字量输出形式,XX为20、30、40或者60,为CPU性能参数等级。

1、SR和ST的区别

ST可变为SR,加中间继电器即可,但是SR不能变为ST,因为继电器达不到晶体管的开关速度。

2、20、30、40、60的区别……

查看原文:https://www.dianyuan.com/bbs/2689996.html



S7-200smart PLC面板介绍

本文初略介绍西门子S7-200smart PLC的面板及端口。

1、PLC正面视图

图 1为200 smart PLC ST20 CPU的正面视图,其中图中左侧

>>运行状态指示灯,含义如下;

RUN:表示CPU处于运行状态;

STOP:表示CPU处于停止状态;

ERROR:表示CPU有错误。

>>中间是嵌入式安装特定模块的位置,拆开盖板可以安装一个可选器件/信号板(SB);

>>DI输入指示灯,表示数字量输入状态,有输入则亮;

>>DO输出指示灯,表示数字量输出状态,有输出则亮;

>>485接口,用于串口通信,常用于连接触摸屏或连接其他设备与之通信。

打开接线端子盖板,图中右侧:

>>上方分别是数字量输入接口,和CPU的供电输入接口;

>>中间稍下方有个存储卡的插口;

>>下方分别是数字量输出接口,和一个最大300mA的24V直流电输出端子。

2、PLC的俯视和侧面视图

此款CPU带一个网口,在PLC的上方。这个网口用处很大,可以连接触摸屏、连接其他设备或连接上位机电脑并在HMI软件上显示和控制等,使用交换机可组网进行多设备数据交换……

查看原文:https://www.dianyuan.com/bbs/2689775.html



S7-200smart PLC分享

本文介绍什么是PLC。

0、前言

本系列的分享将会涉及以下内容:

S7-200 smart(主要),S7-300,S7-400,1200,1500 WINCC,触摸屏 编程 数字量、模拟量处理、运动控制等 ……

其中S7-300,S7-400,1200,1500的主要内容预计将会在新开的其他系列文中描述。

1、PLC的定义

PLC, Programmable Logic Controller,可编程逻辑控制器。是种专门为在工业环境下应用而设计的数字运算操作电子系统。它采用一种可编程的存储器,在其内部存储执行逻辑运算、顺序控制、定时、计数和算术运算等操作的指令,通过数字式或模拟式的输入输出来控制各种类型的机械设备或生产过程。

2、PLC有什么特点

可编程,可通过程序来控制端口;

可执行数学运算、逻辑运算、条件运算(判断),计时、计数,顺序控制等;

支持数字量、模拟量输入、处理与输出(配相应模块);

可与其他设备通信,支持网口、串口等通信接口。

3、PLC有什么优势

可靠性高,适用于工业现场恶劣的环境,较强抗温抗湿抗干扰等。

指令成熟,开发不算难。

周边部件配套成熟。常见的部件,如变频器、驱动器、触摸屏等都支持与PLC集成,或者说主流PLC做到了能控制这些设备或与之通信。

4、PLC的应用

5、小结

PLC就是一种可以编程的控制器,实现采集外部输入、控制输出、与其他设备通信等功能,可执行顺序、定时、计算、判断等任务,可满足工业现场控制的绝大部分场景需求……

查看原文:https://www.dianyuan.com/bbs/2689763.html



关于PLC810PG的PFC+LLC调试

现在在做一款200W电源,选用PLC810PG,PFC有输出 不过LLC不工作 不知道什么原因,希望高手解答!参数:c=22nf ls=140uh lp=500uh ……

查看原文:https://www.dianyuan.com/bbs/579511.html




30个PLC编程实例,带你从小白进阶电气大神

PLC在学习的过程中,除了需要掌握必备的基础理论知识以外,更需要亲身设计电路来实践学习。刚开始学习PLC编程的时候,可以先从小的电路程序入手,由浅入深,先易后难的进行学习,今天我们就重点来看看基础的PLC编程实例。

未完继续……

查看原文:https://www.dianyuan.com/eestar/article-4202.html




PLC是怎么练成的?

作为触摸屏的人机交互控制,大家会想到经常用的平板,比如一些机器人控制,都是用平板来做人机交互,就是通过触摸控制,机器人完成相应的动作,还有最最常见的自动取款机等等,不过这些大部分都基于linux系统下通过GUI软件来做图形界面的,这次尝试一下利用组态软件来做人机交互,这个组态软件在PLC控制当中应用最多的,看看组态软件在DGUS屏上是怎么应用的。

最终的产品是mini-PLC

一 、mini-PLC整体功能

  1. 整体电源采用24V开关电源供电
  2. 单片机型号为STM32F103ZE,100个引脚
  3. 通讯采用RS232和485,协议在27楼
  4. 采用串口转以太网模块连接电脑,上位机软件实时监控并控制,11路AD采样输入,都可以通过拨码开关来控制,16路开关量输入(监控设备的开关状态),17路开关输出(通过继电器控制,带指示灯),EEPROM存储一些设定参数,模拟量DAC输出

二、整体软件功能

  1. 使用了三个串口,第一个串口负责和迪文屏通信,第二个串口负责和串口转以太网模块通讯,第三个串口负责485通讯
  2. 使用了三个通用定时器中断,滴答定时器中断
  3. RTC时钟
  4. AD和DA转换
  5. 看门狗
  6. 采用嵌入式实时操作系统ucos2,多任务执行

既然是人机交互 ,光有上位机软件是不行的,必须结合下位机才可以。

这次是通过232串口和单片机通讯的,单片机采用STM32F103。

准备用这个7寸触摸屏开开发

DGUS 是迪文图形应用服务软件的简称,是基于K600+内核迪文屏所设计的智慧型人机界面系统软件。使用搭载DGUS软件的迪文屏,可帮助用户零代码快速开发全图形触摸屏人机界面。

与传统的LCM通过时序或指 令控制显示不同,DGUS屏采用直接变量驱动显示方式,所有的显示和操作都是基于预先设置好的变量配置文件来工作的,整个开发过程通过PC软件来设计完成触控和变量配置文件。

整体的功能挺多的

软件的基本操作,举一个简单的例子。

比如一个开和关按钮,一个运行状态。

我们触摸开是,键值为1

我们触摸关时,键值为0……

查看原文:https://www.dianyuan.com/eestar/article-33.html


更多精彩内容,尽在电子星球

https://www.dianyuan.com/eestar/

PWM搞不定,读完此文得心应手

快速入门PWM的技术难点,从此开始!

六篇PWM文章献给2023年爱学习的你

关于PWM,七篇文章帮你快速上手

宝藏半导体技术文章合集,送你!