Arduino 与树莓派 Raspberry Pi 相比各自有什么优缺点
因为近两年内有家装的需求,考察了市面上的智能家居方案,要么不靠谱看不上眼,要么价格高得离谱。想着自己原来也搞过一段时间单片机,Linux 靠着 Google 和 StackOverflow 也能解决一些问题。于是开始尝试 Arduino 和 RPi 在家居控制方面的各种实践。总结一些想法给大家作为参考:
RPi 和 Arduino 两个完全不同运算水平的平台。毕竟 RPi 使用的是一颗运行在 700MHZ 的 ARM11 CPU;而常用的 Arduino UNO 则是一颗在工业控制领域常见的 8-bit ATmega328,最高运行频率仅 20MHz。
RPi 可以运行完整的操作系统,如 Debian 等常见 Linux 发行版 - RPi Distributions。这意味着你可以使用你熟练的语言(如 Python、Java)和熟悉的库来进行开发,同时后台运行多个进程也毫无压力。而 Arduino 作为一款真正传统意义上的单片机系统,一次只能运行一个你烧进去的程序,功能也相对单一。
RPi 自带的接口比较全面,USB-host、RJ45、HDMI、SD读卡器等常用接口都有;而 Arduino 比较单纯,与外部设备打交道需要另外采购接口板。
RPi 因为是一个相对完整的「电脑」,其成本肯定比 Arduino 高,目前 B 版在淘宝普遍 280 元左右;而常用的 Arduino UNO 40 元搞定。
RPi 拥有更完整的操作系统,这也意味着每次复电后所需的启动时间很长,而且还不能保证重启后你写的相关服务都能正常启动(Linux 大拿可能会觉得是我技术渣);但 Arduino 因为用途单一,重启速度超快,而且重启结束后立即就在运行你让它做的事。
综合考虑后,我的选择是:
RPi 作为家居中央控制服务器,负责与互联网的通信、采样存储 Arduino 上报的状态数据、处理数据量大的工作(如音频、视频、相关)、提供 API 给 iOS 及 Android 以方便用手机控制家居。RPi 与 Arduino 间通过以太网和 Zigbee 进行数据传输。
Arduino 负责家居传感器采样,如光线强度、温度、人体红外感应等。有的模块比较独立,比如人体感应的夜间走廊灯,单个 Arduino 可以自己实现监控加控制,就不需要上报数据给 RPi 了。需要上报和接收数据的 Arduino ,通过 Zigbee 及以太网和 RPi 进行通信。
这样的好处就是投资小,而且把计算任务都放在了 RPi 上,算是物尽其用。
工控机在工业领域的主要用途是是用于工业自动化系统中需要计算机的地方。和PC 机的主要区别是抗干扰能力强,可靠性高。
具体对比如下:
工控机的主要类别有:IPC(PC总线工业电脑)、PLC(可编程控制系统)、DCS(分散型控制系统)、FCS(现场总线系统)及CNC(数控系统)五种。
1、IPC
即基于PC总线的工业电脑。据2000年IPC统计PC机
工控机(图1)
已占到通用计算机的95%以上,因其价格低、质量高、产量大、软/硬件资源丰富,已被广大的技术人员所熟悉和认可,这正是工业电脑热的基础。其主要的组成部分为工业机箱、无源底板及可插入其上的各种板卡组成,如CPU卡、I/O卡等。并采取全钢机壳、机卡压条过滤网,双正压风扇等设计及EMC(electromagneticcompatibility)技术以解决工业现场的电磁干扰、震动、灰尘、高/低温等问题。
IPC有以下特点:
可靠性:工业PC具有在粉尘、烟雾、高/低温、潮湿、震动、腐蚀和快速诊断和可维护性,其MTTR(MeanTimetoRepair)一般为5min,MTTF10万小时以上,而普通PC的MTTF仅为10000~15000小时。
实时性,工业PC对工业生产过程进行实时在线检测与控制,对工作状况的变化给予快速响应,及时进行采集和输出调节(看门狗功能这是普通PC所不具有的),遇险自复位,保证系统的正常运行。
扩充性,工业PC由于采用底板+CPU卡结构,因而具有很强的输入输出功能,最多可扩充20个板卡,能与工业现场的各种外设、板卡如与道控制器、视频监控系统、车辆检测仪等相连,以完成各种任务。
兼容性,能同时利用ISA与PCI及PICMG资源,并支持各种操作系统,多种语言汇编,多任务操作系统。
PC (personal computer),个人计算机一词源自于1981年IBM的第一部桌上型计算机型号PC,在此之前有Apple II的个人用计算机。
个人计算机由硬件系统和软件系统组成,是一种能独立运行,完成特定功能的设备。
硬件系统:是指计算机的物理设备如电源、主板、CPU、内存、硬盘等。
l软件系统:是指为方便使用计算机而设计的程序,软件系统包括系统软件和应用软件。系统软件指的是主要用于控制和管理计算机资源的程序,如操作系统、编译系统等。应用软件指各种可以运行在操作系统中的程序,如游戏软件、工作软件等。
个人计算机不需要共享其他计算机的处理、磁盘和打印机等资源也可以独立工作。从台式机(或称台式计算机、桌面电脑)、笔记本电脑到上网本和平板电脑以及超级本等都属于个人计算机的范畴。
随着智能手机和平板的普及,绝大多数人可能已经更青睐那种触动手指即可完成的办公娱乐方式。最近无论是在国内还是在国外,都有不少“专家”认为在不久的某一天里传统PC会被更为便携的手机和平板所替代。
意思是通过对硬件进行配置来实现和计算机的连接。
作用:将需要的所有PLC模块,包括电源,CPU,开关量输入、输出、模拟量输入、输出,通讯模块等进行配置,然后给每个模块分配物理地址。这样就可以方便编程,自己根据需要使用。
组态形成的数据只有其制造工具或其他专用工具才能识别。但是不同之处在于,工业控制中形成的组态结果是用在实时监控的。组态工具的解释引擎,要根据这些组态结果实时运行。从表面上看,组态工具的运行程序就是执行自己特定的任务。
扩展资料:
大多数组态软件提供多种数据采集程序,用户可以进行配置。然而,在这种情况下,驱动程序只能由组态软件开发商提供,或者由用户按照某种组态软件的接口规范编写,这为用户提出了过高的要求。
由于COM技术是在二进制代码级实现的,所以服务器和客户可以由不同的厂商提供。在实际应用中,作为服务器的数据采集程序往往由硬件设备制造商随硬件提供,可以发挥硬件的全部效能,而作为客户的组态软件可以通过OPC与各厂家的驱动程序无缝连接,故从根本上解决了以前采用专用格式驱动程序总是滞后于硬件更新的问题。
同时,组态软件同样可以作为服务器为其他的应用系统(如MIS等)提供数据。OPC现在已经得到了包括Interllution、Simens、GE、ABB等国外知名厂商的支持。随着支持OPC的组态软件和硬件设备的普及,使用OPC进行数据采集必将成为组态中更合理的选择。
-组态
TCP/IP协议与OPC协议是完全不同的两个概念,TCP协议是以太网通讯协议,OPC是工业数据采集服务器协议,OPC服务通过COM+技术实现的,实现不同电脑,不同进程间的数据共享的一种技术标准。OPC服务器在与工业控制前端设备通讯时,既可以使用TCP协议在以太网上通讯,也能通过串口通讯。OPC就像是一个黑匣子,不必关心它怎样进行数据通讯,只要按照OPC提供的方法,共享OPC采集的数据即可。也就是说,只要架设好了OPC服务器,TCP与OPC的转换就完成了,你只需要对OPC获取数据即可。OPC服务器端,有很多现成的产品,只要完成OPC的通讯以及变量设定即可。
ZHDCS系列高压直流电源系统(简称HVDC系统)是杭州中恒根据多年的研究开发和设备运行经验,针对通信系统高可靠性、高性能和节能减排要求而设计的新一代电源产品。HVDC高压直流系统因其具备中间变换环节少、高频滤波体积小、可靠性高、能耗低、可维护性好、占地面积小、投资成本低等优点,逐步取代传统的UPS。
生产商:广州珠江电信设备制造有限公司
类别:通信用240V直流供电系统
特点:支持热插拔,支持前维护
HVDC具有以下特点:
1、HVDC系统的电池在输出端,即使HVDC本身出故障,电池仍然可以给负载供电,保障系统不间断供电。
2、HVDC系统并机是直流并联,只有同电位的问题,控制简单,而且并机失败也不会导致系统瘫痪,至多就是不均流。
3、HVDC系统并机数量不受限制,理论上可以做到无穷大,一般可以做到40台并联。
4、HVDC系统采用N +X并联,整机系统的负荷可以工作在60%~70%的负载,整机效率可以达到95%以上。由于电池的存在,N+1或N+X冗余并联,一台模块出故障,系统也不会发“最后通牒”,至多只是预警。
5、HVDC系统采用组态式一体化监控系统,分散控制、集中管理,各个子监控单元有自己的微机处理器独立运作,各自实现自己的控制功能,使整个系统的可靠性提高。
6、各子监控单元采用了模块化设计,可以根据系统输出容量大小和馈电分配路数的需要,通过配置不同数量的模块,满足用户不同的需求。这种模块化、积木式的设计,能够使系统组成方式更加灵活。
7、HVDC系统接线简单,维护方便,支持在线热插拔。
8、HVDC系统可靠性高、可维护性好、投资成本低、能耗低、占地面积小。
9、输入电压范围宽,适应能力强。
10、系统具备完善的电池管理功能和绝缘监测功能。
每一款云台与解码器的连接方式都是不一样的,但是万变不离其宗。一般云台有六根线:上、下、左、右、自动、公共,摄像机有四根线:变倍、聚焦、光圈、公共,当然现在有自动光圈的镜头,也就少一根线。只需要将云台及摄像机的各线与解码器对应的接口连接即可。解码器到硬盘录像机比较简单,就是用两芯线,解码器的485A、485B 与硬盘录像机的485A、485B连接即可。 这只是线路连接,还需要在解码器及硬盘录像机上设备协议、波特率、地址才能控制。在一个工程里,所有解码器、硬盘录像机的协议、波特率都要设置成一样的,常用协议包括PECLO-D或者PECLO-P,波特率一般设置成2400或者4800,解码器说明书上怎么拨码设置都有详细说明,每款解码器不一样。每台解码器的地址不能设置成一样的,一般从1开始设置,一直顺延。 前端解码器设置好后,要在硬盘录像机上也进行设置,这台解码器对应的图像接在哪个接口,就将这一路的云台设置成相应的协议、波特率、地址码即可。 每款设备都不一样,
第三方OPC服务器,主要是不同厂家的下位PLC与上位机之间通讯用。
名词解释
OPC技术
OPC(OLE for Process Control, 用于过程控制的OLE)是一个工业标准,管理这个标准国际组织是OPC基金会,OPC基金会现有会员已超过220家。遍布全球,包括世界上所有主要的自动化控制系统、仪器仪表及过程控制系统的公司。 基于微软的OLE(现在的Active X)、COM (部件对象模型)和DCOM (分布式部件对象模型)技术。OPC包括一整套接口、属性和方法的标准集,用于过程控制和制造业自动化系统。
应用
由于OPC技术的采用,使得可以以更简单的系统结构、更长的寿命、更低的价格解决工业控制成为可能。同时现场设备与系统的连接也更加简单、灵活、方便。因此OPC技术在国内的工业控制领域得到了广泛的应用,主要应用领域如下:
1)数据采集技术
OPC技术通常在数据采集软件中广泛应用。现在众多硬件厂商提供的产品均带有标准的OPC接口,OPC实现了应用程序和工业控制设备之间高效、灵活的数据读写,可以编制符合标准OPC接口的客户端应用软件完成数据的采集任务。
2)历史数据访问
OPC提供了读取存储在过程数据存档文件、数据库或远程终端设备中的历史数据以及对其操作、编辑的方法。
3)报警和事件处理
OPC提供了OPC服务器发生异常时,以及OPC服务器设定事件到来时向OPC客户发送通知的一种机制,通过使用OPC技术,能够更好的捕捉控制过程中的各种报警和事件并给予相应的处理。
4)数据冗余技术
工控软件开发中,冗余技术是一项最为重要的技术,它是系统长期稳定工作的保障。OPC技术的使用可以更加方便的实现软件冗余,而且具有较好的开放性和可互操作性。
5)远程数据访问
借助Microsoft的DCOM(分散式组件对象模型)技术,OPC实现了高性能的远程数据访问能力,从而使得工业控制软件之间的数据交换更加方便。
0条评论