软件哲学
文章平均质量分 85
姚家湾
做研究和帮助他人是我的热情所在
展开
-
自动化软件的设计工具
自动化软件主要包括了组态软件和SCADA 类型的软件,组态软件主要完成大量的参数配置,图形化编程和界面设计。尽管目前有许多窗口软件的设计工具和语言可以选择,例如基于Windows,Andriod,Linux操作系统,基于Java 框架,基于Web/javascript技术(例如NodeJS,electronJS)等等方式。但是从开发效率和UI的质量而言,Windows还是最好的选择。笔者尝试过基于electron 的自动控制软件的开发,但是总觉得不符合自动控制行业的气质。原创 2023-01-30 10:10:39 · 759 阅读 · 0 评论 -
适合社会化制造的设计
普遍认为,大批量制造(mass production)是最有效的生产方式,我们使用的日常用品和生产设备都是在巨大的工厂生产出来的,比如电脑,冰箱,彩电,汽车,甚至家具和建筑材料以及机床,控制设备等等,都是在巨大无比的工厂内生产出来的。同样地,在互联网时代没有到来之前,社会新闻也是依靠巨无霸的新闻媒体集团“制造出来的”“。大批量制造的缺点是显而易见的,它无法实现“定制化需求“。不过另一个缺点却往往被人们所忽略。这就是社会大众的参与。 社会大众,他们可能是工人,农民,儿童...原创 2022-03-26 11:46:48 · 920 阅读 · 0 评论 -
真实世界中的网络与图模型
在真实世界中,存在着许多十分相似的网络结构,可以使用极为简单的图来建立它们的模型。 图模型和图数据库得到广泛的关注,并且在许多应用领域获得的应用。图模型的概念将和面向对象的概念一样,在数字化建模中获得应用。图模型与面向对象的模型相比更加能够描述事物之间的数据脉络(Data Context)。 在互联网,物联网,智能制造,工业4.0 等诸多领域,采纳了图模型和图数据库技术。理解了图模型的概念,有助于你理解其中的标准,术语和技术原创 2021-07-25 07:21:34 · 1897 阅读 · 3 评论 -
工业软件的特点和设计方法
与IT 工程师谈谈工业软件的特点和设计方法原创 2021-07-18 09:04:12 · 3911 阅读 · 2 评论 -
为什么图数据库非常适合物联网
高盛最近认为,物联网,即所谓的“互联网第三次浪潮”,将“改变我们的生活和工作方式”,因为它为“公司、政府和消费者带来了一系列新的机遇和挑战”。 。”与此同时,摩根士丹利最近预测,在未来五年内,全球将有大约 750 亿台联网设备投入使用。这个数字正在迅速接近人脑中估计的860 亿个神经元。正如人类智能不是由我们大脑中的神经元数量产生的,而是由它们之间 100 万亿个左右的连接产生的一样,构成物联网 (IoT) 的设备的价值也与这些连接和交互有着密切的关系这些设备之间。虽然神经元到设备的...翻译 2021-06-19 07:55:25 · 474 阅读 · 0 评论 -
面向对象的工业程序设计(OOIP)
在现代控制系统中,软件越来越重要,而且越来越庞大。因此,导入计算机领域行之有效的OOP 方法就显得十分重要。控制领域的标准化组织,厂商也不断地做这样的努力。IEC61131-3 的2012 (第三版)中增加了对面向目标程序设计的内容。codsys 提出了连续功能图(CFC )实现图形化OOP。而IEC61499 更是从一开始就支持面向对象程序设计的理念,复合功能块,子应用,ECC ,算法等概念与OOP 的理念非常地契合。本文讨论控制系统面向对象程序设计的相关内容原创 2021-05-05 21:49:29 · 2100 阅读 · 6 评论 -
谈谈基于模型的设计(Model-Based Design)
本博文对基于模型设计的概念,术语和相关技术做一个梳理。...原创 2021-04-23 20:50:51 · 9038 阅读 · 2 评论 -
“工作量证明”价值,开发IEC61499 正当时
任何一个广受欢迎工具软件都具有丰富的功能。IEC61499 分布式控制系统的理念,架构都预示着它将成为下一代开放性系统的主流技术。但是在基于该标准的功能块库没有及其丰富之前,也只可能停留在学术研究的阶段。无法得到工业界广泛地采纳。纵观控制与测量领域流行的软件工具,比如NI 的Labview,MathWorks 的matlab,以及BECKHOFF的模块化电脑。它们都面向诸多应用领域开发了大量的功能块库。许多人都认为只有专利技术,独特技术才具有“护城河”作用。使产品具有竞争能力。...原创 2020-09-26 20:48:57 · 477 阅读 · 0 评论 -
爱上 GO 语言
爱上一个程序设计语言和爱上一个人差不多,主要是凭感觉。 在开发物联网边缘设备的过程中,使用C++ 编写了各种装载在docker 容器中的微服务App。其过程是一段痛苦的经历,不断地尝试各种C++库。感觉自己大多数时候都是在下载,cmake ,填坑。而不是在思考和编写自己的代码。就拿json 的编解码来说吧,不断地测试,最终选择了国内大公司腾讯难度的开源代码库rapidjson 库。结果...原创 2020-01-02 12:54:56 · 458 阅读 · 0 评论 -
平民开发者和无代码,低代码开发
2020年的第一天,我在网络上发现了一个新名词-Citizen Developer,有人翻译成平民开发者,也有人翻译成公民开发者。大致的定义是: Citizen Developer是一个用户,它使用公司IT认可的开发和运行时环境来创建新的业务应用程序,以供其他人使用。过去,最终用户应用程序开发通常仅限于使用Microsoft Excel和Access之类的工具构建的单用...原创 2020-01-01 18:57:09 · 1328 阅读 · 1 评论 -
我为什么不使用国内的开源软件
对于微处理器OS ,我宁愿使用国内不太流行的mbed OS ,而不使用RT-thread OS,是崇洋媚外么?不是,主要是国内的开源软件缺乏分享的论坛。mbed OS 可以从国外的论坛上找到大量的软件实例。而国内的论坛除了原厂写一点以外,其它人不是写的比较草率,就是垃圾太多。开源软件说是代码公开,其实并没有多少人去读源码,但是论坛,分享精神非常重要。之前使用了腾讯开源软件,rapid json 。...原创 2019-11-28 20:56:16 · 553 阅读 · 1 评论 -
谈谈物联网的边界
物联网是一个热门话题,市面上出现了各式各样的物联网云平台。但是它们的这些平台是物联网项目所需要的么?我觉得它们至少有下面几点不足:1 过度地强调云端,忽略了数据和控制的本地化 看见一些大的平台运营商为企业做工业物联网项目,坚持将大量的原始数据上传到云端,而企业总是想将数据放置企业的内部。显然,将大量的原始数据上传到云端是不合理的。这也许和云平台的运营的商业模式有关,放置企业内部就...原创 2019-12-04 18:46:07 · 1092 阅读 · 0 评论 -
不必过分依赖开源软件
平心而论,如果没有国外蓬勃发展的软件开源运动,我国的软件产业不会如此快速地发展。我国的互联网软件,云服务大都是利用国外开源软件建立和发展起来的。虽然是开源免费软件。但是毕竟是别人家的软件。千万不要误解为是自主可控的自家技术。 一切事情都是一把双刃剑,开源软件也是如此。开源软件多了,产生了过多对国外开源软件的依赖性。这样有可能会忽略了自主创新。现在平台,架构,大数据,云服...原创 2019-10-28 21:33:04 · 519 阅读 · 0 评论 -
软件的人性
大家都知道,软件是程序员设计出来的,算法是软件的核心,算法决定了软件行为方式。传统的软件可以通过测试,来预先判断软件是否按照所描述的算法正确的执行,算法是否合理。 程序都是由程序员设计的。软件的许多细节是由程序员设计时决定的,程序员在设计过程中也可能使软件的某些行为出现偏差。总而言之,软件的许多特征和程序员的性格,兴趣爱好,喜好,世界观,人生观相关。 关于这个问题,...原创 2019-10-21 21:12:56 · 305 阅读 · 0 评论 -
康威定律:组织结构与技术架构的关系
所谓康威定律,来自于Melvin Conway1968年写的一篇论文,原文是Any organization that design a system (defined broadly) will produce a design whose structure is a copy of the organization's communication structure.其大意是设计系统的组织,...原创 2019-10-20 16:30:59 · 2051 阅读 · 0 评论