-
推导设计一个简单的二阶系统
2020-06-13 23:09:00比如说设计一个简单的系统,那么保证功能后要转换成实际的电路,根据实际情况来选择原件,近年来很多自控的考题也向这个方向引导。胡寿松的书上有比较详细的图片,有一页讲常见的传递函数对应的模型,主要分为两类,...
翻笔记的时候想到了这个比较有趣,设计一个二阶系统,想想本科的时候设计什么老师也不讲太细,也不知道怎么实现的,稀里糊涂的就看别人怎么连电路,自己也连一遍…比如说设计一个简单的系统,那么保证功能后要转换成实际的电路,根据实际情况来选择原件,近年来很多自控的考题也向这个方向引导。胡寿松的书上有比较详细的图片,有一页讲常见的传递函数对应的模型,主要分为两类,一类是RLC电路,而另一类是借助于运算放大器。对于常见的模型应该会选择,至于复杂一点的PID也要有所了解。
以前学的时候也不懂拉普拉斯变换,而且更重要的是不理解负反馈是如何实现的,上述的图片非常经典,很多实验书中都有这个图片,而且在一些考研书上这个模型也很常见,为什么他就能表示负反馈呢,仔细一推导,还真是这样。
总之,要形成一种思考的方式,既能根据图片推导传递函数也能反向设计电路。
顺便说一句,matlab是学习自控的好帮手,首先仿真模块非常先进,搭建一些简单的控制系统方便,然后就是伯德图,奈奎斯特图和根轨迹的使用,在自己画出了图像后还能比较结果。
有时候也佩服这些基本理论的提出者,尽管那个时候没有很高级的计算机,但也有很多严谨的理论,在不借助更多数学工具的情况下,手算就能在误差允许的范围内判断系统的一些性能指标,
-
图文解说万能充电器的电路设计
2020-07-12 14:36:44本文将从六张图从简单到复杂的描述万能充电器的整个电路设计,关于电池极性接反的问题,5V的输入电源将是从220V市电降压整流后送过来,高压隔离反激式降压电路又将发挥什么样的作用,我们一起看下文详解。... -
清楚简单,一种串口触摸屏的开发流程和方法介绍成都电路板设计
2021-01-16 16:05:35本文介绍了一种串口触摸屏的开发方法和流程。 1.什么是串口触摸屏 触摸屏是工业控制上很...控件:串口触摸屏上大部分显示的图形和文字都可以当作控件来处理,如触摸屏上的一个按钮、一个文本框、一个输入框、一个进本文介绍了一种串口触摸屏的开发方法和流程。
1.什么是串口触摸屏
触摸屏是工业控制上很常见的人机交互部件,很多设备、系统都在使用它,它至少有两个功能:显示,触摸控制。
串口触摸屏是采用串行数据通信协议进行数据交换的触摸屏,具有简单、可靠、易于操作的特点。
2.怎么进行触屏开发
2.1 关键词定义和工作原理
页面:一个串口触摸屏一般可以制作多个页面,一个页面对应着一幅画面,每个页面需要编号。
控件:串口触摸屏上大部分显示的图形和文字都可以当作控件来处理,如触摸屏上的一个按钮、一个文本框、一个输入框、一个进度条等,都可以当作一个控件。
工作原理:
触摸屏上控件的绝大部分属性和参数都可以通过接收到的串口指令来控制。如将界面里一个进度条命名为j0,那么通过串口向触摸屏发送字符串指令“j0.val=80”,再加上结束符,那么这个进度条就会达到80%的位置。
用户对触摸屏上绝大部分控件的动作,都能触发触摸屏串口输出一串数据。例如,用户点击触摸屏上的按键或者选中了一个多选框等,都能令触摸屏的串口输出一段对应的数据,这个可以用于控制。
一般触摸屏都会配套一个开发软件,在开发软件上做界面,拖拽放置需要用到的控件,如按键、文本框等,设置好控件的属性和事件代码。触摸屏一般需要和控制器配套使用,在控制器中需要编程,接收触摸屏来的数据和通过串口向触摸屏发送数据改变控件的参数或者属性。
2.2开发流程是怎样的
串口触摸屏的开发流程一般是这样的:
1. 明确需求:明确需要显示和控制的参数、界面需求等;
2. 熟悉资料:在开发过程中,根据触屏的用户手册确定接线方式、通信协议,包括波特率、数据位、校验位、指令等;
3. GUI设计:在开发软件上拖拽、绘制图形(控件),进行GUI设计;
4. 将设计好的GUI下载到触摸屏里。一般触摸屏会配备专用的下载线用于下载。
5. 控制器编程:在控制器编程,将对应的参数传输到触摸屏的指定页面的指定控件,或者接收来自触摸屏的指令执行相应的动作;
6. 调试:根据预设的功能需求逐一检查各个任务指标,修改,直到达到要求。
2.3 连接线路介绍
接线很简单,一般触摸屏上就四根线:
TX:接控制器的RX端;
RX:接控制器的TX端;
GND:接直流电源负极;
VCC:接直流电源正极5V。
注意:接线方式在不同的产品可能会不同,根据产品手册接线。
2.4 触摸屏上的GUI设计方法在开发软件上做好界面(GUI),然后利用专用的数据线将在开发软件上做好的界面下载到触摸屏里面即可。
在开发软件上的界面开发类似于在电脑上写软件,如与VB、C#等开发软件的过程类似,包括:
在开发软件中新建或添加页面,为页面编号。
在软件的界面左边有个控件栏,里面包含了常用的控件,如显示框、文本输入框、按钮、指示灯、曲线控件等。点击需要的控件,按住拖动放置到中间工作区的合适位置,设置属性
,控件的常见属性包括控件的颜色、字体、字号、长宽高等;
编写事件代码。控件的事件表示对控件进行了一个什么操作,之后让控件干什么,例如按了一下按钮之后让按钮控件通过触摸屏的串口发送出一串数据。
2.5 控制器编程
控制器一般可以是PLC、单片机、FPGA等支持串口通信的处理器,在这里面一般需要写入程序,以实现与触摸屏的数据交换。一般需要完成两个工作:
向触摸屏上的某个页面中某个控件发送数据,以改变控件的参数或者属性;
向某个控件发送数据首先得判断当前处于哪个页面,或者跳转到指定的页面。控制器向触摸屏发送数据的一般格式为:控件名.属性值=“需要显示的字符”+结束符。数据发送以串口发送字符串的形式进行。
如在开发软件上定义了一个指针控件z0,如果要改变指针的指向到90%,那么可以让控制器的串口发送字符串数据:z0.val=90,再加上结束符(此触摸屏的结束符为0XFF 0XFF 0XFF),触摸屏接收到指令后,就会将指针拨到90%的位置。
接收触摸屏上某个控件的事件动作数据,执行相应的动作。
当用户用手指在触摸屏上触摸某一个控件时,触摸屏的串口会发送出一串数据,一般格式为:帧头+页面号+控件号+动作号+结束符。这个数据格式根据不同的触摸屏会有不同的要求,需查看使用手册,一般的触摸屏也允许开发者自定义事件的动作。
例如,当用户触摸某个按键时,触摸屏会通过串口发送一串数据:0X65+页面 ID+按键 ID+触摸事件+结束符,如字符串数据为0X65 0X00 0X01 0X01 0XFF 0XFF 0XFF,表示页面0中的按键1按键按下,其中0X65是按键的帧头,0XFF 0XFF 0XFF是结束符。控制器接收到串口数据后,与预设的数据进行对比,如果匹配正确,再令相关设备执行动作即可,这个可以在串口中断里面进行处理。
一般的控制器都有串口,按照控制器的开发手册编写串口收发数据的代码即可。
小结
串口触摸屏在工控上的应用是很普遍的,也比较简单可靠,但是在使用时应当注意以下几点:
不同触摸屏的使用方法不尽相同。在控制器的程序中,接线方式、串口的通信协议、指令格式等要根据具体的触摸屏手册来编写,让触摸屏与控制器的正确匹配。
为了通信的可靠,应当做好通信的校验。
识别很重要,包括对页面的识别和对不同控件的识别。
全文完。研究表明,关注、点赞、转发和赞赏,是激励作者创作的最佳动力。 -
智能小车九《不学电路图怎么造车》
2017-08-15 10:22:19但是芯片和其它电子原件的焊接还是免不了的,为了理清思路,还是得学习下怎么设计电路板(PCB)。当然我们做的这个小车比较简单,不画原理图和pcb图也是可以的,但时间长了这十几根线一定记不清了。比如我做的第一款...硬件部分最麻烦的应该就是做这个电路板了,之前已经介绍了使用L293D芯片和arduino ProtoShield。使用ProtoShield至少免去了在万能板上焊排针的工作。
但是芯片和其它电子原件的焊接还是免不了的,为了理清思路,还是得学习下怎么设计电路板(PCB)。当然我们做的这个小车比较简单,不画原理图和pcb图也是可以的,但时间长了这十几根线一定记不清了。比如我做的第一款扩展板就是这样没图画,现在就记不清线了。所以我决定这次做要留下图,方便以后查看。以前做的扩展板:
最终我在腾讯课堂买了一个课堂,准备学习一下如何画pcb图。使用的工具是Protel99se,它可以在
http://www.downza.cn/soft/20556.html下载。
因为我是第一次用这个工具,所以会把这个记录得详细些。
一、准备工作
1.新建项目File->New Design
2.在新建的项目中增加四个文件夹File->New,如下图:
3.双击新建的4个文件夹中的sch.lib,就上是图中的Schematic library对应的文件夹:
二、制作元器件
点击sch.lib后选择上面的Browse SchLib可以从Components中看到新建的元件。
1.新建元件Tools->New Component
图里的arduino uno,7805,L293D这三个元件都是这么建的。
2.绘制元件。
以绘制arduino uno为例,选择SchLibDrawingTools里的矩形,画一个矩形。然后选择SchLibDrawingTools里最后的一个引脚图标绘制引脚。这里有个小技巧,点了引脚图标后按tab键出来属性对话框,可以修改属性。如果num属性设置为数字,那么绘制出来的标号就是这个数字且数字会自动增加,这样就会省很多工作量。
3.绘制原理图
绘制好元件后就可以把元件放入原理图,来理清电路了。
1.添加libraries.
点击上图里的cz.sch.Sch再选择Browse Sch列表页。点击下面的Find按钮,在弹出的窗口Path输入框中选择我们刚设计的元件文件的路径,再点击Find Now按钮,选好文件后点击Add To Library List就可以了。
2.连接各元件的线路。
很抱歉的说我这点电路知识就是个小白,所以我尽量少用元件,用的都是有用且能理解的。这个放到下一文讲。 -
关于数字电路的设计方法的进一步认识
2011-02-10 15:52:00前一阵子,一直在苦恼,那些寄存器啊,锁存器啊,移位寄存器啊那么复杂,要我们怎么看得懂它的...书本上的寄存器,锁存器等的电路图其实是要我们去熟悉一下它的构造,而不是要我们明白它的原理。就是如此的简单,但是前一阵子,一直在苦恼,那些寄存器啊,锁存器啊,移位寄存器啊那么复杂,要我们怎么看得懂它的设计方法呢?难不成是要顺着那些线路去找,然后写出每一个输出端的逻辑表达式,再从它的原理中理解它的设计方法吗?但是它到底是怎样设计出来的呢?
先在想来,也在网上搜了一下,发现原来那些复杂的数字电路的设计也是按照画真值表,写逻辑表达式,然后再按照表达式用逻辑门部件和一些触发器画出电路图这样的步骤来做的。书本上的寄存器,锁存器等的电路图其实是要我们去熟悉一下它的构造,而不是要我们明白它的原理。就是如此的简单,但是我竟然把它弄得太复杂了。
-
问一个关于检测传感器电阻变化 并送入32单片机判断的电路(传感器电阻变化从2k-10k)之间
2018-10-13 02:37:21![!...ad是我之前一个师兄画的,一直搞不懂为啥要用5个运放来判断最大adc值,水笔是我画的,总感觉太简单了,怕什么问题。我不知道各位在做单片机检测传感器电阻变化项目的时候电路怎么设计。望指教 -
1602怎么利用按键清屏_无MCU实现按键电平保持的电路,手把手带你精准分析电流走向...
2020-12-24 13:41:20看到这里,大家估计要笑我了,这不是很简单的嘛,随便用个几毛钱的单片机,两个IO口就搞定了,但是如果要求纯硬件呢,只用三极管跟阻容,大家怎么设计?不藏着掖着了,就是下图:本电路实现了,KEY1按一下,OUTPUT... -
对Buck电路的一点思考
2019-08-04 19:51:10我们先来看这样一个电路,如下图所示: 考虑这样几个要求: Input source:100V Output load:50V,10A,500W 想一想,这个电路可以怎么设计? 我们在初中物理的电路知识中就学过串联电路分压的知识,所以即使没有学过... -
迷茫的旅行商:一个无处不在的计算机算法问题 PDF
2016-04-08 10:40:47副标题: 一个无处不在的计算机算法问题 原作名: In pursuit of the traveling salesman:Mathematics at the limits of computation 译者: 隋春宁 内容简介 · · · · · · 假设一名旅行商打算拜访一张城市列表中... -
第七篇:点亮一个LED
2020-06-02 17:28:24点亮一个LED灯实验是比较简单的一个实验,为什么这么说呢?点亮一个LED只需要在某个固定的引脚输出一个高电平或者低电平即可完成设计。没有多大挑战性,今天我就从几个方面简单的叙述一下是怎么实现的。 首先,还得... -
PCB变成3D瞬间高大上,怎么用Allegro实现呢?
2020-04-02 10:43:50众所周知,Cadence 是一个大型的EDA 软件,它几乎可以完成电子设计的方方面面,包括ASIC 设计、FPGA 设计和PCB 板设计。Cadence 在仿真、电路图设计、自动布局布线、版图设计及验证等方面有着绝对的优势。Cadence ... -
ad19 导出step 没有pcb_PCB变成3D瞬间高大上,怎么用Allegro实现呢?
2020-12-30 17:13:06众所周知,Cadence 是一个大型的EDA 软件,它几乎可以完成电子设计的方方面面,包括ASIC 设计、FPGA 设计和PCB 板设计。Cadence 在仿真、电路图设计、自动布局布线、版图设计及验证等方面有着绝对的优势。Cadence ... -
statuml怎么添加用户_UML课后习题答案
2021-01-14 00:18:15第1章UML概述1....1)电路图:电子产品设计、生产、维修2)园区沙盘:直观、立体化地展示园区的景观、布局3)地图:导航、指路等3. 请说明蓝图和草图的区别,并简单描述其适用的场景。蓝图一般是指采用CASE(Comp... -
干啥的>
2017-09-16 22:25:00每次提到Verilog怎么学,总有很多人告诉你, 它是描述型语言,语法简单,你应该去学数字电路设计. 什么叫数字电路 ? 本质肯定是电路, 那电路是干啥用的,肯定是为了实现一个功能的吧。 怎么才能叫实现功能 ? 看下图 : ... -
verilog编写异步时序中的握手信号
2020-05-29 10:21:44在数字电路设计中,往往不存在一个系统共用一个时钟源的情况,在异步电路中,为了使得数据之间的传输不发生错误,基本有以下三种方式:1.寄存器打两拍 2.握手信号 3.异步fifo 下面简单介绍一下握手信号,做过iic... -
为何要使用MCU
2021-01-28 15:13:09如下图所示,不使用MCU的电路是一个由LED,开关和电阻构成的简单电路。 不安装MCU的LED电路 * 使用MCU的电路如下图所示。 安装MCU的LED电路图 * 很显然,使用MCU的电路要复杂得多,而且设计电路还要花费精力与... -
Quartus_II使用教程
2012-11-26 23:20:43如果我们设计一个16位计数器,选用74163芯片来制作一个简单的16位计数器。 在bdf文件的空白处双击然后在name选项中直接输入芯片名称。 插入input,output 后,连接进行布线。光标移动到线的一段后就会自动变成... -
PMOS做信号开关NMOS做电平转换
2020-09-03 19:39:06硬件工程师在设计原理图时,偶尔会遇到一些情况,需要一个开关来隔断信号,或者需要一个电平转换电路来匹配不同的IO电平。可以用专用的芯片来解决问题,但往往价格高,且不一定容易得到。其实,有更加简单有效的方法... -
清华大学的计算机网络课件
2010-03-26 11:11:56问题4-17:一个大学能否就使用一个很大的局域网而不使用许多相互连接的较小的局域网? 问题4-18:一个10 Mb/s以太网若工作在全双工状态,那么其数据率是发送和接收各为5 Mb/s还是发送和接收各为10 Mb/s? 问题4-19:... -
ARM 嵌入式LINUX 系统构建与驱动开发
2009-06-19 16:23:368 用我写的《自己写了个C工程模板又写了个使用说明 》里的方*调试程序吧,写个简单的,我当时写个LED闪烁的。看好使不。 9 把程序按照《FLASH烧写总结 》里的烧到FLASH里,测试一下 10 按照《UBOOT 移植操作》移植... -
计算机网络常见问题解答
2010-06-07 08:19:11问题4-18:路由表中只给出到目的网络的下一跳路由器的IP地址,然后在下一个路由器的路由表中再给出再下一跳的路由器的IP地址,最后才能到达目的网络进行直接交付。采用这样的方法有什么好处? 问题4-19:链路层广播... -
华为编程开发规范与案例
2008-09-04 16:44:56从上面的测试过程中,我们可以看到:如此严重的问题,仅仅是一个简单的错误引起的。实际上,系统的不稳定往往是由这些看似很简单的小错误导致的。这个问题给我们教训的是:在直接对内存地址进行操作时,一定要保证...
-
ESP8266实现Web配网+获取NTP服务器网络时间方法四
-
MPAP_c579ebd1135a4f42bf1140fe0a1c1b77_001.provxml
-
MySQL 高可用工具 heartbeat 实战部署详解
-
xxljob源码分析
-
MySQL 事务和锁
-
Windows如此普及,为什么要学Linux
-
OpenNuvoton-NUC970.rar
-
完美解决php无法上传大文件功能
-
pic-repo:萨瓦文章图片-源码
-
活性等离子体纳米颗粒阵列中面外晶格等离子体的低阈值共振放大
-
World Hydropower Generation 世界水力发电-数据集
-
Java中的ThreadLocal详解
-
NFS 实现高可用(DRBD + heartbeat)
-
Galera 高可用 MySQL 集群(PXC v5.7+Hapro)
-
i.MX6ULL终结者线程基础 线程创建
-
intro-component-with-signup-form-源码
-
2021年软考系统规划与管理师-下午历年真题解析视频课程
-
华为1+X认证——网络系统建设与运维(初级)
-
lmmunity canvas渗透工具包
-
fancensus_demo-源码