1-PLC基础入门系列(PLC介绍,连接下载说明)
阅读这节文章之前请先阅读这一篇 https://www.cnblogs.com/yangfengwu/p/7681702.html
首先明确一点,PLC就是用单片机做的,后面我会给大家演示用我自己的开发板实现PLC功能
我选择的PLC是 三菱
PLC型号:FX1S-10MR-D 24V电源供电,PLC很小巧.

大家不用买下载器,我给大家准备好了线,直接用我的开发板下载就可以

该款PLC的下载程序的接口是422接口 关于各种电平传输信号 https://www.cnblogs.com/yangfengwu/p/5838059.html

咱用到的就这四个,和我板子的连接
PLC引脚 开发板引脚
RxD+ ---- A+
RxD- ---- A-
TxD+ ---- B+
TxD- ---- B-
然后我测量了这根线

TxD+ ---- 蓝
TxD- ---- 黄
RxD+ ---- 棕
RxD- ---- 黑
所以
蓝 ---- B+
黄 ---- B-
棕 ---- A+
黑 ---- A-
使用这块开发板做演示 https://www.cnblogs.com/yangfengwu/category/1508003.html

注:开发板的A+ A- 同时支持发送数据和接收数据(485), B+ B- 只能接收数据
因为PLC的 RxD+ RxD-是只接收数据 ,所以只用了A+ A- 引脚的发送功能
PLC的 TxD+ TxD-是只发送数据 ,所以用了B+ B- 引脚接收数据
给PLC上电
我用的PLC为建议供电是20V-26V ,继电器是12V的, 用的是开关降压,一般开关降压芯片压降在1V左右,所以稳定的话14V供电应该就可以
其实12V供电也没关系,顶多给继电器供电的那个开关降压不工作,直接就产生个压降 所以如果12V供电,给继电器的大约是11V,其实也能驱动继电器的
我用24V供电哈,因为手头正好有个24V的,其实12V的也可以

不用担心接反,,,里面做的电路是 
开发板上电 (USB线连接电脑哈) 调整跳线帽,让电脑串口和422通信


注意:以后无论自己哪块开发板,PLC和开发板的连接固定,然后短接相应的跳线帽,让电脑串口和422通信
安装PLC软件
链接:https://pan.baidu.com/s/1Cz6Xtm521mS1xPr5Yv8PgA
提取码:1sud
安装教程 https://jingyan.baidu.com/article/e2284b2b6d23fbe2e6118db8.html

打开软件


看一下串口,学单片机的应该都知道具体意思吧,,就是电脑串口通信而已

双击


建个工程,跑个程序,注意哈,因为是第一节,所以直接打开我的就可以,第一节嘛,主要是了解

这个程序就是控制其中一个继电器1S吸合,1S断开 Y0

也可以全部选择,最好全部选择上,不光下载进去程序,也把注释什么的保存到单片机(PLC),这样的话,读取程序的时候就是个完整的程序


下载进去以后,PLC运行以后,会听到继电器1S吸合,1S断开的声音

好了,现在玩个更透彻点的,,,把我的这块板子做成PLC,下面的代码为STM32实现PLC的代码
说明:我只是为了让别人更好的理解PLC,没有其它目的,如果下面的教程涉及到别人的利益,请告知,我会做修改.感谢!
让电脑串口和单片机串口1通信




BOOT0 接高电平,然后复位一下单片机




去掉Boot的短接,然后复位下单片机

咱重新建个工程







咱控制这个引脚

我的开发板的 PC11正好连接了一个继电器


ldi m0

out y6

不再往下演示了,我这个用STM32实现PLC的程序好像有BUG ....
我只是告诉大家实质.实质....请不要干坏事呀!,做个安分守己的好孩子哈.
有些时候把知识点说的太透彻,也会让我感到害怕.......
1-PLC基础入门系列(PLC介绍,连接下载说明)的更多相关文章
- 【JAVA零基础入门系列】Day4 变量与常量
这一篇主要讲解Java中的变量,什么是变量,变量的作用以及如何声明,使用变量. 那么什么是变量?对于初学者而言,可以将变量理解为盒子,这些盒子可以用来存放数据,不同类型的数据需要放在对应类型的盒子里. ...
- 【JAVA零基础入门系列】Day5 Java中的运算符
运算符,顾名思义就是用于运算的符号,比如最简单的+-*/,这些运算符可以用来进行数学运算,举个最简单的栗子: 已知长方形的长为3cm,高为4cm,求长方形的面积. 好,我们先新建一个项目,命名为Rec ...
- 【JAVA零基础入门系列】Day6 Java字符串
字符串,是我们最常用的类型,每个用双引号来表示的串都是一个字符串.Java中的字符串是一个预定义的类,跟C++ 一样叫String,而不是Char数组.至于什么叫做类,暂时不做过多介绍,在之后的篇章中 ...
- 【JAVA零基础入门系列】Day8 Java的控制流程
什么是控制流程?简单来说就是控制程序运行逻辑的,因为程序一般而言不会直接一步运行到底,而是需要加上一些判断,一些循环等等.举个栗子,就好比你准备出门买个苹果,把这个过程当成程序的话,可能需要先判断一下 ...
- 【JAVA零基础入门系列】Day10 Java中的数组
什么是数组?顾名思义,就是数据的组合,把一些相同类型的数放到一组里去. 那为什么要用数组呢?比如需要统计全班同学的成绩的时候,如果给班上50个同学的成绩信息都命名一个变量进行存储,显然不方便,而且在做 ...
- 【JAVA零基础入门系列】Day11 Java中的类和对象
今天要说的是Java中两个非常重要的概念--类和对象. 什么是类,什么又是对象呢?类是对特定集合的概括描述,比如,人,这个类,外观特征上,有名字,有年龄,能说话,能吃饭等等,这是我们作为人类的相同特征 ...
- 【JAVA零基础入门系列】Day12 Java类的简单应用
俗话说的好,实践出真知,所以除了理论知识掌握扎实以外,更重要的是要多加操练,这样才能掌握核心科技. 今天我们就用刚学会的类来实践一下,目标便是完成上一篇中的剁手任务. 我们的商品类已经准备好了,代码重 ...
- 【JAVA零基础入门系列】Day13 Java类的继承与多态
继承是类的一个很重要的特性,什么?你连继承都不知道?你是想气死爸爸好继承爸爸的遗产吗?(滑稽) 开个玩笑,这里的继承跟我们现实生活的中继承还是有很大区别的,一个类可以继承另一个类,继承的内容包括属性跟 ...
- 【JAVA零基础入门系列】Day14 Java对象的克隆
今天要介绍一个概念,对象的克隆.本篇有一定难度,请先做好心理准备.看不懂的话可以多看两遍,还是不懂的话,可以在下方留言,我会看情况进行修改和补充. 克隆,自然就是将对象重新复制一份,那为什么要用克隆呢 ...
随机推荐
- numpy 数组增加列,增加行的函数:column_stack,row_stack
def fun_ndarray(): a = [[1,2,7], [-6,-2,-3], [-4,-8,-55] ] b = [3,5,6] a = np.array(a) b = np.array( ...
- git本地代码管理
git真的是一个代码管理神器,帮助我们在代码开发过程中更好的进行版本管理,如果没有版本管理器,就要不停的复制粘贴,一个项目开发下来,一堆的版本文件夹,最后都不知道是哪个版本了. 用git之后,每一次的 ...
- [转帖]linux基础知识大纲
linux基础知识大纲 https://blog.csdn.net/CSDN___LYY/article/details/80810403 1.Linux操作系统概述Linux操作系统的发展过程.创始 ...
- 【LeetCode】145. Binary Tree Postorder Traversal
Difficulty: Hard More:[目录]LeetCode Java实现 Description https://leetcode.com/problems/binary-tree-pos ...
- MVC+Ninject+三层架构+代码生成 -- 总结(二、建項目)
1.項目分層,其中SqlSugar 是一個ORM 庫類. 2.VS庫類 視圖.
- mysql锁机制总结,以及优化建议
一.锁概述和分类 二.表锁 偏向MyISAM存储引擎,开销小,加锁快:无死锁:锁定粒度大,发生锁冲突的概率最高,并发度最低. [手动增加表锁] lock table 表名字1 read(write), ...
- Jenkins 任务定时
在项目配置中选择 Build Triggers 下勾选 Build periodically,可以对项目进行定时构建设置.构建设置详细可通过右边的问号符号进行查看. 定时构建字段遵循 cron 的语法 ...
- ANT 的使用
概述 ant 是一个将软件编译.测试.部署等步骤联系在一起加以自动化的一个工具,大多用于 Java 环境中的软件开发. 在与 Jmeter 生成的 jmx 文件配合使用中,ant 会完成jmx计划的执 ...
- Oracle的功能性sql
--创建表空间 CREATE TABLESPACE FSNEW DATAFILE 'E:\oracle\oracledata\oradata\FSNEW' SIZE 30G EXTENT MANAGE ...
- centos6升级python版本至python3.5
一. 从Python官网到获取Python3的包, 切换到目录/usr/local/src wget https://www.python.org/ftp/python/3.5.1/Python-3. ...