阅读这节文章之前请先阅读这一篇  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介绍,连接下载说明)的更多相关文章

  1. 【JAVA零基础入门系列】Day4 变量与常量

    这一篇主要讲解Java中的变量,什么是变量,变量的作用以及如何声明,使用变量. 那么什么是变量?对于初学者而言,可以将变量理解为盒子,这些盒子可以用来存放数据,不同类型的数据需要放在对应类型的盒子里. ...

  2. 【JAVA零基础入门系列】Day5 Java中的运算符

    运算符,顾名思义就是用于运算的符号,比如最简单的+-*/,这些运算符可以用来进行数学运算,举个最简单的栗子: 已知长方形的长为3cm,高为4cm,求长方形的面积. 好,我们先新建一个项目,命名为Rec ...

  3. 【JAVA零基础入门系列】Day6 Java字符串

    字符串,是我们最常用的类型,每个用双引号来表示的串都是一个字符串.Java中的字符串是一个预定义的类,跟C++ 一样叫String,而不是Char数组.至于什么叫做类,暂时不做过多介绍,在之后的篇章中 ...

  4. 【JAVA零基础入门系列】Day8 Java的控制流程

    什么是控制流程?简单来说就是控制程序运行逻辑的,因为程序一般而言不会直接一步运行到底,而是需要加上一些判断,一些循环等等.举个栗子,就好比你准备出门买个苹果,把这个过程当成程序的话,可能需要先判断一下 ...

  5. 【JAVA零基础入门系列】Day10 Java中的数组

    什么是数组?顾名思义,就是数据的组合,把一些相同类型的数放到一组里去. 那为什么要用数组呢?比如需要统计全班同学的成绩的时候,如果给班上50个同学的成绩信息都命名一个变量进行存储,显然不方便,而且在做 ...

  6. 【JAVA零基础入门系列】Day11 Java中的类和对象

    今天要说的是Java中两个非常重要的概念--类和对象. 什么是类,什么又是对象呢?类是对特定集合的概括描述,比如,人,这个类,外观特征上,有名字,有年龄,能说话,能吃饭等等,这是我们作为人类的相同特征 ...

  7. 【JAVA零基础入门系列】Day12 Java类的简单应用

    俗话说的好,实践出真知,所以除了理论知识掌握扎实以外,更重要的是要多加操练,这样才能掌握核心科技. 今天我们就用刚学会的类来实践一下,目标便是完成上一篇中的剁手任务. 我们的商品类已经准备好了,代码重 ...

  8. 【JAVA零基础入门系列】Day13 Java类的继承与多态

    继承是类的一个很重要的特性,什么?你连继承都不知道?你是想气死爸爸好继承爸爸的遗产吗?(滑稽) 开个玩笑,这里的继承跟我们现实生活的中继承还是有很大区别的,一个类可以继承另一个类,继承的内容包括属性跟 ...

  9. 【JAVA零基础入门系列】Day14 Java对象的克隆

    今天要介绍一个概念,对象的克隆.本篇有一定难度,请先做好心理准备.看不懂的话可以多看两遍,还是不懂的话,可以在下方留言,我会看情况进行修改和补充. 克隆,自然就是将对象重新复制一份,那为什么要用克隆呢 ...

随机推荐

  1. 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( ...

  2. git本地代码管理

    git真的是一个代码管理神器,帮助我们在代码开发过程中更好的进行版本管理,如果没有版本管理器,就要不停的复制粘贴,一个项目开发下来,一堆的版本文件夹,最后都不知道是哪个版本了. 用git之后,每一次的 ...

  3. [转帖]linux基础知识大纲

    linux基础知识大纲 https://blog.csdn.net/CSDN___LYY/article/details/80810403 1.Linux操作系统概述Linux操作系统的发展过程.创始 ...

  4. 【LeetCode】145. Binary Tree Postorder Traversal

    Difficulty: Hard  More:[目录]LeetCode Java实现 Description https://leetcode.com/problems/binary-tree-pos ...

  5. MVC+Ninject+三层架构+代码生成 -- 总结(二、建項目)

    1.項目分層,其中SqlSugar 是一個ORM 庫類. 2.VS庫類 視圖.

  6. mysql锁机制总结,以及优化建议

    一.锁概述和分类 二.表锁 偏向MyISAM存储引擎,开销小,加锁快:无死锁:锁定粒度大,发生锁冲突的概率最高,并发度最低. [手动增加表锁] lock table 表名字1 read(write), ...

  7. Jenkins 任务定时

    在项目配置中选择 Build Triggers 下勾选 Build periodically,可以对项目进行定时构建设置.构建设置详细可通过右边的问号符号进行查看. 定时构建字段遵循 cron 的语法 ...

  8. ANT 的使用

    概述 ant 是一个将软件编译.测试.部署等步骤联系在一起加以自动化的一个工具,大多用于 Java 环境中的软件开发. 在与 Jmeter 生成的 jmx 文件配合使用中,ant 会完成jmx计划的执 ...

  9. Oracle的功能性sql

    --创建表空间 CREATE TABLESPACE FSNEW DATAFILE 'E:\oracle\oracledata\oradata\FSNEW' SIZE 30G EXTENT MANAGE ...

  10. centos6升级python版本至python3.5

    一. 从Python官网到获取Python3的包, 切换到目录/usr/local/src wget https://www.python.org/ftp/python/3.5.1/Python-3. ...