电机的启停影响单片机程序的运行,该如何解决?

电机的启停影响单片机程序的运行,该如何解决?,第1张

控制可分三种
简单启停:用一个端口的电位高低,控制ULN2008之类的,就可以了,在程序中可以控制启,停,延时。
调速运行:这要用PWM了,并且最好用mos管去控制电机
反馈运行:这要用到编码器之类的位置反馈元件,复杂,当然也是最好的,可以用PWM调整速度
,也可以指定它转过一定圈数(也就是接收到一定数量的反馈脉冲)再停止。

1 S7-200 PLC
系统实现监控的几种方法
在大多数控制系统中,
仅仅是实现控制是不够的,
在许多情况下也需要监控界面
对工艺过程和参数进行监控。

S7-200
系列
PLC
构成的控制系统的监控功能一般由以下三种方法来实现:
(1)
采用组态软件来组态监控界面;
第三方软件编制的监控软件监控;
使用触摸
屏监控。用组态软件
WinCC
实现监控,功能强大,灵活性好,可靠性高。但软件
价格高,并需要解决
WinCC

S7-200
系列
PLC
的通讯问题。在复杂控制系统中
可以采用此方法。
(2)
用第三方软件
(

VB

Delphi
等高级语言
)
编制的监控软件实现监控,
灵活
性好,系统投资低,能适用于各种系统。但开发工作量大,可靠性难保证,除了
对技术人员的经验和技术水平的要求较高外,
还必须购买通信协议软件,
在系统
资金投资有限,技术人员水平较高的情况下可以采用此方法。
(3)
采用触摸屏进行监控,
可靠性高,
监控实现容易,
触摸屏与
PLC
之间的通讯
问题生产厂商已处理好,
用户不用考虑,
可以大大缩短工程周期。
但灵活性较差,
功能有限,
不能满足复杂控制系统的监控要求,
而且价格高,
在系统可靠性要求
高、工期短的情况下可以采用此方法。
以下就
S7-200
系列
PLC
与监控计算机之间的数据通讯问题,特别是对于上面所
提到的前两种通讯方式进行讨论。
PLC
2 WinCC
组态软件与
S7-200
系列
PLC
的数据通讯
SIMATIC
WinCC
是采用了最新的
32
位技术的过程监控软件,具有良好的开放性和
灵活性。无论是单用户系统,还是冗余多服务器
/
多用户系统,
WinCC
均是较好
的选择。通过
ActiveX

OPC

SQL
等标准接口,
WinCC
可以方便地与其它软件进
行通讯。
WinCC

S7-200
系列
PLC
的通信,可以采用
Profibus

PPI
两种通信
协议之一来实现。
21 WinCC

S7-200
系列
PLC
通过
Profibus
协议通讯的实现
(1)
软硬件要求
PC


Windows 98
*** 作系统;
S7-200
系列
PLC

CP5412
板卡或者其他同类板卡,例如:
CP5611

CP5613

EM277 Profibus DP
模块;
Profibus
电缆及接头;

安装
CP5412
板卡的驱动;

安装
WinCC 40
或以上版本;

安装
COM Profibus
软件。
(2)
组态
打开
SIMATIC NETCOM Profibus
,新加一个组态,主站为
SOFTNET-DP
,从站是
EM277 Profibus-DP
。主站的地址选择从
1

126
。从站的地址选择从
3

99
,与
EM277
的地址一致。
然后用该软件对从站进行配置:
打开从站属性,

Configure
选项中,选择
8bytes in/8bytes out
(可根据实际需要选定)
。在
Parameterize
中可以选择偏移地址,地址对应于
S7-200
系列
PLC
的数据区(即
V
区)
,默认为
0
,即从
VB0
开始。组态完成后,导出
(Export)NCM
文件,生成
txt

ldb

件。
(3)
设置
PG/PC interface


Access
Point
of
the
Application
中选择
CP_L2_1
,在
Interface
Parameter
Assignment


CP5412A2(Profibus)








DP





DP-Database
参数中输入
ldb
文件的完全路径。设置完成后可以诊断硬件配置
是否正确、通信是否成功。
(4) WinCC
的设置。

WinCC
变量管理器中添加一个新的驱动程序,新的驱动程序选择
PROFIBUS
DPCHN

选择
CP5412

A2

Board 1


System Parameters
设定
参数。
CP5412(A2)board
参数为
1

表示板卡的编号;
Config
参数为组态时生成的
txt
文件的完全路径;
Watchdog time
参数为
0
。新建一个连接,从站地址与
EM277
的地址一致。
(5)
建立变量。
WinCC
中的变量类型有
In

Out

In

Out
是相对于主站来说的,

In
表示
WinCC

S7-200
系列
PLC
读入数据,
Out
表示
WinCC

S7-200
系列
PLC
写出数据。
In

Out
与数据存储区
V
区对应。
在该例中,
Out

PLC
中数据存储区的
VB0~VB7
对应,
In

PLC
中的存储区的
VB8~VB15
对应。
(6)
优缺点。
优点:
该方法数据传输速度快,
易扩展,
实时性好。
缺点:
传送数据区域有限
(最

64
字节)


PLC
中也必须进行相应的处理,
且硬件成本高,
需要
CP5412

EM277
Profibus-DP

Profibus
总线等硬件,还需要
Com Profibus
软件。应用场合:
适用于在要求高速数据通信和实时性要求高的系统。
PLC
资料网
22 WinCC

S7-200
系列
PLC
通过
PPI
协议通讯的实现
PPI
协议是西门子
S7-200
系列
PLC
常用通信协议,但
WinCC
中没有集成该协议,

WinCC
不能直接监控
S7-200
系列
PLC
组成的控制系统。
S7-200 OPC Server
是西门子公司推出的专为解决上位机与
S7-200
系列
PLC
控制系统通讯的接口软
件。因此,
WinCC
可以通过该软件与
S7-200
系列
PLC
很方便的建立通信。
(1)
软硬件要求:
PC


Windows 98
*** 作系统;
S7-200
系列
PLC

PC/PPI
电缆。

安装
S7-200 OPC Server
软件。

安装
WinCC 40
软件。
(2)
连接:
在控制面板中设定
PG/PC
接口参数。在
Access Point of the Application
中选

Computing

Interface
参数选择
PC/PPI
Cable
。在
WinCC
变量管理器中添加
一个新的驱动程序,
新的驱动程序选择
OPCCHN


OPC
GROUP
中新建一个连接,







OPC
Group
Setting

OPC






OPCServerMicroComputing

然后在新添加的连接中新建变量,
变量的
Item
Name

S7-200
系列
PLC
中用于监控的变量名对应。例如:
Item Name

M00

(3)
优缺点
优点:该方法连接简单、硬件投资少、可以读写
S7-200
系列
PLC
中所有存储区
域。缺点:通信速度比较慢、需要
OPC
软件及相应授权、系统扩展不方便。应用
场合:用于低速、实时性要求不高、系统投资有限的系统。另外,也可以通过其
他公司的
OPC
软件进行通信,例如用开普的
KEPServerEx
作为
OPC
服务器,用
WinCC
作为
OPC
客户端来读写
S7-200
系列
PLC
内部数据区。
实现与上述第二种方
法类似,不同的是必须在
OPC
服务器中建立标签与
S7-200
系列
PLC
中存储地址
对应。在复杂系统中,如果系统中同时有
S7-200
系列
PLC

S7-300
系列
PLC

在,
S7-200
系列
PLC
一般作为
S7-300
系列
PLC
的从站挂到
Profibus
总线上,
WinCC
通过
S7-300
系列
PLC

S7-200
系列
PLC
实现通讯。
3
第三方软件与
PLC
的通讯连接
有些系统具有特殊性,
没有现成的通用软件用于进行数据处理和系统监控,
这就
需要用户用第三方软件开发平台来开发满足系统要求的监控软件。
这样做既可以
满足系统要求,
又可以节约系统投资。
但对软件开发人员的经验和技术要求较高。
第三方软件开发平台开发的监控软件与
S7-200
系列
PLC
通信使用
PPI
协议的接
口软件有:
Prodave

MicroComputing

OPC
。第三方软件开发平台开发的监控软
件与
S7-200
系列
PLC
通过自由口进行通信,协议自定的话,开发的监控软件可
以调用
MSComm
控件实现两者的通信。
PLC
31

Prodave
软件包实现通讯连接
Prodave
是西门子公司推出的专门用于西门子
PLC
产品(
S7-200

300

400
系列
PLC
)与
PC/PG
进行数据交换处理的软件包。
Prodave

DLL

LIB
文件中集
成了数据交换的函数。
在自行开发的监控软件中可以方便地调用该软件中的各种
函数。主要函数有:
(1) load_tool PC
机与
PLC
系统初始化链接;
(2) unload_tool
断开
PC
机与
PLC
系统链接;
(3)
以及读写
PLC
内部存储区的函数。
监控软件通过读写函数可以方便监控
PLC
控制系统。
32

MicroComputing
软件实现通讯连接
安装
MicroComputing
后,在
VB

Delphi
中可以直接插入控件。可插入的控件
主要有:
Data controls

Edit controls

Button controls

Label controls

Slider
control

Data
controls
的主要功能是把以上剩余的四个控件与
S7-200
系列
PLC
相连接、设置事件触发条件以及设定
S7-200
系列
PLC
地址等。而
Edit
controls

Button
controls

Label
controls

Slider
control
可以与
S7-200
系列
PLC
存储资源直接对应。
第三方软件可以直接调用上列控件对
PLC
进行监控,
也可以通过函数对
S7-200
系列
PLC
进行读写 *** 作。
33

OPC Server
软件实现通讯连接
PLC
资料网
安装
S7-200
OPC
Server
软件后,在 *** 作系统中将增加一个
OPC
服务器,服务器
的名字是

OPCServerComputing


VB

Delphi
中可编写
OPC
客户端程序与
OPC
服务器通信。
以下给出在
VB
开发环境下编写
OPC
客户端程序的过程:
首先在
VB
开发环境中的
ProjectReferences
中添加
OPC Automation 20
,然后编写连接
OPC Server

添加组、添加条目、读写数据的程序。
使用到的函数如下:
connect
函数:与
OPC Server
建立连接;
OPCGroupsAdd
函数:添加组;
OPCITemsAdditems
函数:添加条目;
SyncRead
函数:同步读;
SyncWrite
函数:同步写。
OPC
服务器名为“
OPCServerComputing

,
条目名称与
S7-200
系列
PLC
中用于
监控的变量名对应。
34
用自由口实现通讯连接

VB

Delphi
下插入
MSComm
控件,按照自定协议通过串口来收发数据,并对
数据进行处理并实现监控。在
PLC
中也必须编写通信程序。
优缺点总结:

Prodave
,实现简单,灵活性较好,可以直接调用
Prodave
的函数对
S7-200
系列
PLC
内部存储区进行读写,
并能满足大规模数据的传输,
调试简单,
很适合
在工程中应用。但需要购买软件,编程较复杂。用
MicroComputing
,使用方便,
编程以控件实现,编写简单。但灵活性差,并需要购买软件和授权。用
OPC
实现
通信,编程灵活也较简单,调试简单,由于
OPC
协议是通用协议,得到了许多公
司支持,通用性好。但需要购买软件及授权。用自由口通信实现,通信协议自己
制定,灵活性好,扩展了使用范围,不需购买专门软件。但编程复杂,
PLC

要编写复杂的程序,使用了大量
PLC
的资源。
VB

Delphi
中用
MSComm
控件对
串口进行读写,程序复杂,实时性较差。
4
结束语
上面给出了监控计算机与
S7-200
系列
PLC
通信实现的方法,它们各有优缺点,
适用于不同情况下的监控系统。
工程实践证明,
以上的方法对不同要求的系统能
较好地实现监控计算机与
S7-200
系列
PLC
通信,
对类似工程有较高的参考价值。
参考文献

1

高鸿斌,孔美静,郝孟合。西门子
PLC
与工业控制网络应用。北京:电子
工业出版社,
2006


2


健。西门子
S7-300PLC
应用教程。北京:机械工业出版社,
2007


3

西门子
(中国)
有限公司自动化与驱动集团编。
深入浅出西门子
S7-200PLC

北京:北京航空航天大学出版社,
200

硬盘读写频繁是否bai真的伤害硬盘兼BT是否真的伤害硬盘?du
事先zhi说明一下,我这里只是提到daoBT,没有提到ED,是因为它们的原理都是一样的,我也懒得一个一个打字而已
先引用一下某人的话
为什么频繁读写会损坏硬盘呢?
磁头寿命是有限的,频繁的读写会加快磁头臂及磁头电机的磨损,频繁的读写磁盘某个区域更会使该区温度升高,将影响该区磁介质的稳定性还会导至读写错误,高温还会使该区因热膨涨而使磁头和碟面更近了(正常情况下磁头和碟面只有几个微米,更近还得了?),而且也会影响薄膜式磁头的数据读取灵敏度,会使晶体振荡器的时钟主频发生改变,还会造成硬盘电路元件失灵。
任务繁多也会导至ide硬盘过早损坏,由于ide硬盘自身的不足,,过多任务请求是会使寻道失败率上升导至磁头频繁复位(复位就是磁头回复到 0磁道,以便重新寻道)加速磁头臂及磁头电机磨损。
我先说一下现代硬盘的工作原理
现在的硬盘,无论是ide还是scsi,采用的都是"温彻思特“技术,都有以下特点:1。磁头,盘片及运动机构密封。2。固定并高速旋转的镀磁盘片表面平整光滑。3。磁头沿盘片径向移动。4。磁头对盘片接触式启停,但工作时呈飞行状态不与盘片直接接触。
盘片:硬盘盘片是将磁粉附着在铝合金(新材料也有用玻璃)圆盘片的表面上这些磁粉被划分成称为磁道的若干个同心圆,在每个同心圆的磁道上就好像有无数的任意排列的小磁铁,它们分别代表着0和1的状态。当这些小磁铁受到来自磁头的磁力影响时,其排列的方向会随之改变。利用磁头的磁力控制指定的一些小磁铁方向,使每个小磁铁都可以用来储存信息。
盘体:硬盘的盘体由多个盘片组成,这些盘片重叠在一起放在一个密封的盒中,它们在主轴电机的带动下以很高的速度旋转,其每分钟转速达3600,4500,5400,7200甚至以上。
磁头:硬盘的磁头用来读取或者修改盘片上磁性物质的状态,一般说来,每一个磁面都会有一个磁头,从最上面开始,从0开始编号。磁头在停止工作时,与磁盘是接触的,但是在工作时呈飞行状态。磁头采取在盘片的着陆区接触式启停的方式,着陆区不存放任何数据,磁头在此区域启停,不存在损伤任何数据的问题。读取数据时,盘片高速旋转,由于对磁头运动采取了精巧的空气动力学设计,此时磁头处于离盘面数据区02---05微米高度的”飞行状态“。既不与盘面接触造成磨损,又能可靠的读取数据。
电机:硬盘内的电机都为无刷电机,在高速轴承支撑下机械磨损很小,可以长时间连续工作。高速旋转的盘体产生了明显的陀螺效应,所以工作中的硬盘不宜运动,否则将加重轴承的工作负荷。硬盘磁头的寻道饲服电机多采用音圈式旋转或者直线运动步进电机,在饲服跟踪的调节下精确地跟踪盘片的磁道,所以在硬盘工作时不要有冲击碰撞,搬动时要小心轻放。
原理说到这里,大家都明白了吧?
首先,磁头和数据区是不会有接触的,所以不存在磨损的问题。
其次,一开机硬盘就处于旋转状态,主轴电机的旋转可以达到4500或者7200转每分钟,这和你是否使用BT或者ed都没有关系,只要一通电,它们就在转它们的磨损也和软件无关。
再次,寻道电机控制下的磁头的运动,是左右来回移动的,而且幅度很小,从盘片的最内层(着陆区)启动,慢慢移动到最外层,再慢慢移动回来,一个磁道再到另一个磁道来寻找数据。不会有什么大规模跳跃的(又不是青蛙)。所以它的磨损也是可以忽略不记的。
那么,热量是怎么来的呢?
首先是主轴电机和寻道饲服电机的旋转,硬盘的温度主要是因为这个。
其次,高速旋转的盘体和空气之间的摩擦。这个也是主要因素。
而硬盘的读写???
很遗憾,它的发热量可以忽略不记!!!!!!!!!!
硬盘的读 *** 作,是盘片上磁场的变化影响到磁头的电阻值,这个过程中盘片不会发热,磁头倒是因为电流发生变化,所以会有一点热量产生。写 *** 作呢?正好反过来,通过磁头的电流强度不断发生变化,影响到盘片上的磁场,这一过程因为用到电磁感应,所以磁头发热量较大。但是盘片本身是不会发热的,因为盘片上的永磁体是冷性的,不会因为磁场变化而发热。
但是总的来说,磁头的发热量和前面两个比起来,是小巫见大巫了。
热量是可以辐射传导的,那么高热量对盘片上的永磁体会不会有伤害呢?其实伤害是很小的,永磁体消磁的温度,远远高于硬盘正常情况下产生的温度。当然,要是你的机箱散热不好,那可就怪不了别人了。
我这里不得不说一下某人的几个错误:
一。高温是影响到磁头的电阻感应灵敏度,所以才会产生读写错误,和永磁体没有关系。
二。所谓的热膨胀,不会拉近盘体和磁头的距离,因为磁头的飞行是空气动力学原理,在正常情况下始终和盘片保持一定距离。当然要是你大力打击硬盘,那么这个震动。。。。。
三。所谓寻道是指硬盘从初使位置移动到指定磁道。所谓的复位动作,并不是经常发生的。因为磁道的物理位置是存放在cmos里面,硬盘并不需要移动回0磁道再重新出发。只要磁头一启动,所谓的复位动作就完成了,除非你重新启动电脑,不然复位动作就不会再发生。
四。ide硬盘和scsi硬盘的盘体结构是差不多的。只是scsi硬盘的接口带宽比同时代的ide硬盘要大,而且往往scsi卡往往都会有一个类似cpu的东西来减缓主cpu的占用率。仅此而已,所以希捷才会把它的scsi硬盘的技术用在ide硬盘上。
五。硬盘的读写是以柱面的扇区为单位的。柱面也就是整个盘体中所有磁面的半径相同的同心磁道,而把每个磁道划分为若干个区就是所谓的扇区了。硬盘的写 *** 作,是先写满一个扇区,再写同一柱面的下一个扇区的,在一个柱面完全写满前,磁头是不会移动到别的磁道上的。所以文件在硬盘上的存储,并不是像一般人的认为,是连续存放在一起的(从使用者来看是一起,但是从 *** 作系统底层来看,其存放不是连续的)。所以BT或者ed磁头的寻道一般都不会比你一边玩游戏一边听歌大。当然,这种情况只是单纯的下载或者上传而已,但是其实在这个过程中,谁能保证自己不会启动其它需要读写硬盘的软件?可能很多人都喜欢一边下载一边玩游戏或者听歌吧?更不用说windows本身就需要频繁读写虚拟内存文件了。所以,用BT下载也好,ed也好,对硬盘的折磨和平时相比不会太厉害的。
六。这里顺便说说flashget这个下载软件。为什么开太多线程会不好?首先,线程一多,cpu的占用率就高,换页动作也就频繁,从而虚拟内存读写频繁,至于为什么,只要学过系统原理的应该都知道,我这里就不说了。同理,BT和ED呢?同时从几个人那里下载一个文件,还有几个人同时在下载你的文件,这和fg开多线程是类似的。所以硬盘灯猛闪。但是,现在的硬盘是有缓存的,数据不是马上就写到硬盘上,而是先存放在缓存里面,,然后到一定量了再一次性写入硬盘。在fg里面再怎么设置都好,其实是先写到缓存里面的。但是这个过程也是需要cpu干预的,所以设置时间太短,cpu占用率也高,所以硬盘灯也还是猛闪的,因为虚拟文件在读写。
七。硬盘读写频繁,磁头臂在寻道伺服电机的驱动下移动频繁,但是对机械来说这点耗损虽有,其实不大。除非你的硬盘本身就有机械故障比如力臂变形之类的(水货最常见的故障)。真正耗损在于磁头,不断变化的电流会造成它的老化,但是和它的寿命相比。。。。。应该也是在合理范围内的。除非因为震动,磁头撞击到了盘体。
八。受高温影响的最严重的是机械的电路,特别是硬盘外面的那块电路板,上面的集成块在高温下会加速老化的。所以ibm的某款玻璃硬盘,虽然有坏道,但是一用某个软件,马上就不见了。再严重点的,换块线路板,也就正常了。就是这个原因
打了这么多字,实在是太累了。
总之,硬盘会因为环境不好和保养不当而影响寿命,但是这绝对不是软件的错。
flashget也好,BT也好,ED也好,它们虽然对硬盘的读写频繁,但是还不至于比你一般玩游戏一般听歌对硬盘伤害大说得更加明白的话,它们对硬盘的所谓耗损,其实可以忽略不记不要因为看见硬盘灯猛闪,就在那里瞎担心不然那些提供web服务和ftp服务的服务器,它们的硬盘读写之大,可绝非平常玩游戏,下软件的硬盘可比的。
硬盘有一个参数叫做连续无故障时间。它是指硬盘从开始运行到出现故障的最长时间,单位是小时,英文简写是mtbf。一般硬盘的mtbf至少在30000或40000小时。具体情况可以看硬盘厂商的参数说明。这个连续无故障时间,大家可以自己除一下,看看是多少年。然后大家自己想想,自己的硬盘平时连续工作最久是多长时间。
目前我使用的机器,已经连续开机1年了,除了中途有几次关机十几分钟来清理灰尘外,从来没有停过。另外还有三台使用scsi硬盘的服务器,是连续两年没有停过了,硬盘的发热量绝非平常ide硬盘可比(1万转的硬盘啊)。
最后补充一下若干点:
一。硬盘最好不要买水货或者返修货。水货在运输过程中是非常不安全的,虽然从表面上看来似乎无损伤,但是有可能在运输过程中因为各种因素而对机械体造成损伤。返修货就更加不用说了。老实说,那些埋怨硬盘容易损坏的人,你们应该自己先看看,自己的硬盘是否就是这些货色。
二。硬盘的工作环境是需要整洁的,特别是注意不要在频繁断电和灰尘很多的环境下使用硬盘。机箱要每隔一两个月清理一下灰尘。
三。硬盘的机械最怕震动和高温。所以环境要好,特别是机箱要牢固,以免共震太大。电脑桌也不要摇摇晃晃的。
四。要经常整理硬盘碎片。这里有一个大多数人的误解,一般人都以为硬盘碎片会加大硬盘耗损,其实不是这样的。硬盘碎片的增多本身只是会让硬盘读写所花时间比碎片少的时候多而已,对硬盘的耗损是可以忽略的(我在这里只说一个事实,目前网络上的服务器,它们用得最多的 *** 作系统是unix,但是在unix下面是没有磁盘碎片整理软件的。就连微软的nt4,本身也是没有的)。不过,因为磁头频繁的移动,造成读写时间的加大,所以cpu的换页动作也就频繁了,而造成虚拟文件(在这里其实准确的说法是换页文件)读写频繁,从而加重硬盘磁头寻道的负荷。这才是硬盘碎片的坏处。
五。在硬盘读写时尽量避免忽然断电,冷启动和做其他加重cpu负荷的事情(比如在玩游戏时听歌,或者在下载时玩大型3d游戏),这些对硬盘的伤害比一般人想象中还要大。原因我就不说了,打字太累。

1、网卡与DNS配置:打开命令窗口(右键单机桌面选择Open Terminal或者用快捷键Ctrl+Alt+T打开终端),输入ip a查看自己的网卡编号。

2、输入命令sudo vim /etc/network/interfaces,编辑该文件。注意此处 ens33 处用自己的网卡编号替换,address和gateway也是要视自己的情况定的。

3、wq 保存退出,此时ping一些自己的内网应该是可以ping通的了。要是ping >

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10370756.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-08
下一篇2023-05-08

发表评论

登录后才能评论

评论列表(0条)

    保存