navigation

欢迎阅读FsuOS文档

FsuOS是针对动环监控领域的FSU设备提供的一整套控制软件解决方案。

当前FSU设备是个广义的概念,硬件产品覆盖运营商机房监控,铁塔基站监控,电力公司监控,银行地铁等自有机房监控, 产品形态包含传统的集成DI/AI/串口的FSU设备,协议采集转换网关设备,各种边缘控制设备。FSU设备以嵌入式Linux设备为主,少部分采用RTOS和工业控制x86电脑, 后者的功能扩展性和经济性相比嵌入式Linux设备较差。FSU设备由于属于定制设备,不像网络交换机一样通用,一直以来客户只要购买设备就只能依赖厂家进行软件定制和开发,由此引出各种问题,对客户相当困扰。

由于当前主流Fsu都是基于嵌入式Linux,厂家在Linux基础上进行接口驱动和软件的研发,这就为FsuOS的诞生提供了必要的准备条件。FsuOS通过在目标FSU设备部署,利用原有FSU的Linux操作系统和接口驱动适配到FsuOS软件, 达到使用原有FSU硬件设备的功能,并提供丰富的功能,统一的操作界面,并可以随时切换回原有系统。FsuOS相当于FSU界的Windows系统,致力于提供开放的FSU控制系统。

FsuOS的优势:

  • 支持不同厂家的不同设备,只要满足最低硬件要求(Arm9-180Mhz,64MB-ram,64MB-Nand),大概率都可以支持。
  • 支持统一的Web操作界面,并提供丰富的培训文档。所有部署FsuOS的设备,都使用同样的方法管理。
  • FsuOS性能优于绝大多数厂家原有系统,运行流畅。
  • 支持二次开发,提供原生驱动培训文档。
  • 支持统一驱动(PyDriver)编写,通过使用Python编写驱动,真正做到一次编写,所有Fsu都可以运行。(2024-10-18 不推荐,比较鸡肋,二代FSU由于配置较低,运行python过于笨重。三代FSU由于已经采用的容器化FsuOS,驱动已经统一,不存在移植问题)
  • 三代FSU上由于运行的都是同一个容器化的FsuOS,驱动程序真正实现共用一套
  • 三代FSU上,通过容器化部署的FsuOS,可与K8s等云边端管理平台集成,部署更新不再需要运维人员一个设备一个设备去更新文件,都通过镜像自动升级,极大地提高了维护效率。

FsuOS的被吐槽的地方:

  • 部分用户反馈配置使用还是比较困难,上手比较慢。主要原因由于FSU每次部署时面对的设备种类不确定,每次都要根据现场情况进行配置和调试,复杂多变
  • 界面不够简单。我们对比了客户提供的大蓝屏风格的界面,其实仔细看看就能发现FsuOS网站和大蓝屏的区别,FsuOS网站侧重于工程师使用,为工程师提供部署调试的各种功能,大蓝屏侧重于用户使用,并且对于设备界面进行了定制,显示数据搭配图表更加美观。但是对于实际使用中面对的上千种设备,尤其大型设备信号告警多大几千,一一定制研发人员很快就会不堪重负,所以大家看到的大蓝屏往往针对易于表现的温湿度,电表,电压电流等数据进行定向的美化。
  • FsuOS好像没有原系统稳定,比如个别型号,串口设备有时候掉线,部署FsuOS后业务FSU掉线修要修复。从原理上讲,FsuOS采用的是Linux和标准C++,Boost开发库进行研发,只要目标设备符合Linux系统正常标准都可以使用,实际情况是,可能受制于各方面技术限制,很多厂家设备都不实现标准的linux编程接口,而采用自定义的方式进行外部设备的访问,有的表面上看是支持标准linux接口,实际使用却有bug。一般情况下,我们如果发现FsuOS使用过程中的问题就会研究,看是我们程序问题,还是操作系统问题,或是设备驱动问题,或是编程接口问题,并根据目标系统进行调整,最终达成稳定,这有个过程,会对经历这个过程的用户造成一些不好的印象,也需要用户理解,毕竟FsuOS是个后移植的程序,不像原厂家对自己的工作方式比较清楚,避坑比较容易,FsuOS只能通过踩坑的方式进行。如果FSU设备厂家把设备做的像电脑一样标准,大多数时候就没有这么多问题了。

哪些FSU厂家的设备可以被白盒化?

要回答这个问题,就要搞清楚FSU设备的技术分代

第一代:(基本不具备白盒子化价值)功能简单,集成化程度低 工业控制电脑/通用PC+通信扩展板,RTU/DTU,单片机设备,串口服务器,串口HUB,一些拼凑的主板放在配电箱里那种本质仍是单片机的设备。除了电脑外,单片级设备没有操作系统,基本不具备部署程序的可能。 样例:艾**前置机,中*采集器,创*FSU,维* estone。基本常见的不正常的FSU都归于此类。

第二代:(当前FsuOS的白盒化主要针对此代)集成化程度高,接口变化多,综合性能跨度大, 近15年常见的采用Linux操作系统的嵌入式硬件。内核常见的从2.6开始一直到目前6.8,文件系统组织非常多样化,整体上厂家缺少规范和自底向上的整体技术能力,多为采用核心板系统定制的应用,硬件配置一般为ARM CPU,内存多为64MB,128MB,256MB,NAND多为64MB,256MB。这种是目前最主要用的FSU设备和系统,虽然内部混乱,但是整体生态仍符合Linux。 样例:基本常见的正常的FSU都归属于此类。君光301E,302A,303PRO,303PRO-T;力*:EISU,IG2000,IG2100; 维*GFSU;高**,义**迪,铁塔FSU目录等。

明显特点:外部接口一致化程度较高,接口数量和防护级别基本都满足要求。内部操作系统、设备驱动、软件,绝大多数厂家都混乱不堪。类似汽车行业中老年代步车和比亚迪同场竞技,性能差距大,价格差距其实不大,但是用户很难看懂配置,老年代步车凭借价格优势赢的多。

君光公司FSU产品线由于3代FSU的性价比已经远远超过2代FSU,不再投产2代FSU,使用2代FSU的项目还在维护。

第三代:(容器化的FSU将默认支持FsuOS作为一个容器应用部署进入系统,不需要额外的折腾) 入门级配置已经是2代FSU的很多倍,可以运行容器等应用,微服务等架构也可以运行,相当于定制化电脑。 近2年受益于CPU资源和内存、硬盘价格的下降和性能的增强,部分厂家开始构建“超级FSU”, 其主要特征为配置较高,CPU多为双核1G以上,CPU主要采用arm32(armv7l), arm64(armv8l), Riscv64, mips64 4大平台,内存1G起步,硬盘8G起步,部分CPU自带NPU算力,操作系统支持容器化,FsuOS作为容器应用部署在系统里,同时系统还支持其他容器应用的部署,并且支持当前流行的k3s,k8s的平台集中控制技术,大大提高了FSU系统生态,真正成为多面手。 样例:君光303PRO-NG系列

君光公司FSU产品目前主推3代FSU:303PRO-SE和303PRO-NG. 303PRO-SE凭借599元/台的报价,低于绝大多数2代FSU,并提供更高的配置,更先进的软件。

第四代: 根据目前的技术发展方向,ArmV8都是64位cpu,其他架构也主推64位CPU,32位CPU将逐渐边缘化(类似于armv7l出货量增大,armv6l和armv5逐渐边缘化), 并且Arm提出的systemready技术解决arm操作系统碎片化的问题,当前树莓派已经支持,经过测试,确实可以像电脑装系统一样,使用USB安装盘进行通用操作系统的安装,非常方便。 样例:树莓派4B,树莓派5, 但都不是FSU。

君光公司预计2025年推出第4代FSU

硬件设计上: 2代FSU使用的CPU指令级主要是armv5,armv6,armv7. CPU主要是Arm9,A7,A8截至。 3代FSU使用的CPU指令级主要是armv7,armv8. CPU主要是A7,A35,A55往上。 Linux系统架构上: 2代FSU采用的是嵌入式Linux定制方案,一般系统多为10MB左右的小系统,软件都需要自己交叉编译。 3代FSU采用的是嵌入式Linux+debian/ubuntu/opensuse等x86主流系统的大生态,可以直接使用ubuntu的软件源安装程序,绝大部分软件都不需要自己编译。 软件设计上: 2代FSU主要采用交叉编译的方法进行软件研发,软件组织规模较小。 3代FSU主要采用ARM原生开发主机进行应用研发,高度采用ARM原有系统的软件,并辅助容器化开发方法,管理上采用云边端协同控制技术,部署更新都可以通过集中平台统一管理。 对比2代: 3代FSU底层硬件将采用统一的白盒化规范,同时容器化技术将高度统一,在各个厂家的设备进行软件部署将基本不存在移植问题。 如果不好理解的话,就对比电脑技术的发展。在2010年后的一段时间,虽然服务器系统有centos,ubuntu,opensuse,都是linux,但是软件互相不兼容,为什么?不同的内核,不同的软件版本,为这个操作系统编译的软件在另一个操作系统上无法运行。但是docker的广泛应用,这个问题就消失了,没有人再考虑你用的是什么系统,只要你docker是好的,我就用docker直接运行我的容器。3代FSU是同样的技术原理。 4代FSU,以前你的硬件只能装你的系统centos,现在4代systemready技术,你的硬件可以装ubuntu了,FSU可以像兼容机电脑一样,自己组装,想用什么系统就用什么系统,装完驱动一加载就完了。