2024年4月23日

汽车漫谈之汽车安全、汽车质量、汽车成本

最近有不少朋友与我谈起汽车相关话题,基于我有多年汽车制造行业相关经验,我想写篇漫谈类的文章,以普及一些基础知识。

主题是汽车安全、汽车质量、汽车成本,供大家购车、用车时参考。

首先谈谈汽车安全。

汽车安全分两大类,主动安全和被动安全。

所谓主动安全是指采取措施、尽量避免事故的发生;被动安全是指在事故发生后,尽量减小对人员的伤害。

被动安全的典型例子是轮式车身、安全气囊、安全带,评价一款车被动安全的客观标准是它的“车内乘员安全分指数”项碰撞成绩,G代表优秀。可以从中保研的网站上查询车辆的碰撞成绩。

从网上的车辆事故报道中,我们也可以了解到车辆的安全情况,车辆安全的特征是: 在碰撞事故后ABC柱无明显变形,驾驶室车门能打开,安全气囊打开。

在零件物料方面,为保障安全,通常需要车辆钢板有足够的厚度,重点部位有加强肋板或加强筋。

在装配工艺方面,有两个重要工艺对安全有重大影响: 车身钣金件焊接合格、致密、均匀,零件拧紧装配时合格、合理。

车辆品牌方面,沃尔沃是最注重安全的品牌。

车辆类型方面,SUV比轿车安全。

同品牌同类型车辆,一般而言车辆越重越安全。

比较而言,新能源车的电池安全是一个令人担心的点,不知道以后会不会有针对电池的碰撞或破坏测试。

主动安全近几年提得比较多,相关的车辆配置也较多,如ABS、ESP等。

评价汽车主动安全的客观标准是车辆的极限刹车距离。

汽车设计方面还有两个经典的主动安全设计例子: 汽车出风口打到挡风玻璃位置时会自动打开空调以提供除雾功能,后视镜往下翻会切换到炫目模式。

此外,司机的防御性驾驶也能够提升主动安全。


再来看汽车质量。

两大关键因素: 零件采购质量、整车制造质量。

通常在国内整车厂,一个零件会有两到三个供应商,既包括国际一流大厂,也包括国内二三流小厂,两者的质量水平、采购价格会有较大的差异。

而新厂、新车的制造水平有一个爬坡的过程。

因此,有一些厂商采用了以下的策略: 在前期产能较低,工艺水平相对低,采用国际一流大厂零件以保障零件质量; 在后期产能提升,工艺稳定,采用国内小厂零件以节约成本。

影响质量的因素包括人机料法环,人即人员(包括工人、工程师、管理人员),机即机器设备,料即零件及工具,法即法规(包括制造工艺流程和质量校收标准),环即环境如温度湿度地面平整度等。

以法为例,假设同一个代工厂为两个品牌制造同类型的产品,采用同一组人员、同样的设备、同样的零件、同样的制造工艺、同样的环境,但是A的验收标准高于B的验收标准,就会造成A的良品率低于B的良品率。


再来看汽车成本。

从厂家方面看来,汽车成本包括设计成本、制造成本、营销成本、售后成本,这些成本最终体现在车辆的销售价格和服务价格上面。

从消费者方面看来,汽车成本主要包括购车成本和用车成本。

近几年由于新能源车的发展,购车成本和用车成本比较以前都有了较大差异。

我的建议是从完整的用车周期考虑汽车成本。

购车成本包括裸车价、各项税费、补贴。比较而言,新能源车裸车价较贵,但是有补贴,而且在部分城市可以省下买车牌的钱。

用车成本包括: 加油或加电、保险、保养、维修、二手车保值率。

比较而言,新能源车加电比加油省钱得多,但是保险费较贵,保养费则较省。

维修方面,采用大压铸技术的车身维修费较高,雷达、摄像头、感应器越多的车辆维修费越高。也可以参考中保研碰撞成绩的“耐撞性与维修经济性分指数”,此项分数越低则维修越费钱,保险费越高。

保值率方面,新能源车比汽油车掉得快。

我们在购车前,建议理性地从用车周期完整地估算用车成本,从购车到弃车(报废或转让)完整地计算各项费用。


2024年4月8日

ARPG游戏三大要素:故事、情感、陪伴

我最喜欢玩的游戏类型是ARPG。

分析了几个我最喜欢的游戏,我发现了它们的共通之处:一个引人入胜的故事,一段动人心魄的情感,一段并不孤独的旅程。

RPG游戏的基础是故事,所谓角色,是为故事设计的,玩一个RPG游戏,就好比跟随主角穿越到一个异世界,体验一个异乎寻常的故事。为了这个故事,游戏会制作出一个与之配套的世界,以及在这个世界生活的NPC。此外,游戏通常会设计一个大故事与一个小故事,大故事是影响游戏世界与NPC的重大事件,而小故事与主角密切相关。如在《巫师3》中,大故事是白霜灭世的危机,而小故事是拯救女儿。大故事让我们沉浸入游戏世界,而小故事让我们与主角建立连接。

出色的游戏同样让我们在情感上建立连接。许多玩家在通关《巫师3》或《荒野大飙客2》时会有一种虚脱的感觉,这是因为他们与游戏的情感纽带连接得太牢固了,一旦脱离会觉得难以接受。让玩家在情感上付出,这是游戏建立沉浸感的另一个重要因素。比较而言,《地平线》同样也讲了一个好故事,但是我无法在情感上建立连接,因为主角与NPC的情感交互太少太浅,无法让在情感上打动我们。

单机游戏的玩家是孤独的,但是好的RPG游戏会安排一些NPC,陪伴我们走过这个旅程,如《生化奇兵3》的伊丽莎白是如此地生动,甚至于一些玩家在二周目打到海滩就停止了,好让她永远绽放在那个美丽的瞬间。那些在游戏史上留名的NPC,不仅在感情上打动我们,而且陪着我们一起做任务,一起度过这些难忘的旅程。为了加强玩家的情感体验,游戏甚至在一些特殊的时期强制玩家与NPC同伴分开,从而在重聚后让人更加珍惜与同伴的感情。

下图是我根据自己最喜欢的几个ARPG游戏做的一个表,体现了这3个要素的重要作用。




2024年3月13日

世界的本质是个草台班子

前一阵子的两件事,让我不禁感慨: 世界的本质是个草台班子。
第一件事是看到新闻说,波音公司因为政治正确赶跑了资深的空气动力学专家。
第二件事是看韩国电影《首尔之春》,没想到军事行动也可以这么草率。

回想我职业生涯的经历,似乎也可以作为这个结论的佐证。

A公司是行业领袖,其MES系统被评为首批工业4.0灯塔工厂。但是在锦绣包装下面,也填充了不少烂稻草。我记得用户汇报过一个问题,其个工单的验证出错,我检查了工单验证的逻辑,发现了一个不可思议的SQL查询: 100多行的SQL,没有任何注释,没有格式,没有规范换行。我把这个SQL拆分成10多个视图,才逐渐理解了其中的逻辑,找到了问题所在。造成这个问题的根源是: A公司把开发外包给印度T公司,T公司非常注意文档的规范,但在代码层面放飞了自我。

B公司是行业的奠基者,需要将北美的生产调度系统引进中国,此系统的重点是PLC控制逻辑,基于AB PLC开发,而在中国工厂采用了西门子PLC,因此需要进行代码迁移。此外,北美PLC只控制一个工作站,而中国PLC需要控制多个工作站。B公司将迁移和本地化开发的工作开包给一家小公司。我建议搭建测试环境,以尽可能及早发现问题,但是项目负责人说不用,说人家是专业的,之前从没有这么做。结果上线部署的时候傻眼了:项目包太大,超出了PLC的容量。结果这件事情层层升级,最终由公司中国区CEO联系西门子中国区CEO,从别的客户手里暂时调用319F PLC,以解决容量的问题。最终项目交期超出了一个多月后才具备初步上线的条件。

C公司的安灯系统在业内非常知名,我接到的任务是借鉴其功能,将其实现并应用到中国工厂。我在考察C公司工厂时发现其用了软件PLC而不是通常的硬件PLC,也就是说其PLC功能是安装在WINDOWS PC上通过专用软件实现的,因此稳定性方面远不如硬件PLC,原因是项目包太大,普通PLC下载不了。得到其项目包后我才知道原因:有太多遗留设备需要兼容,相同功能不同产线采用代码复制的方式实现,所有I/O参数采用硬代码实现。我和同事研究以后,采用了以下的优化方案: 用符号寻址代替编号寻址,功能模块用配置的方式调用,I/O用配置表进行映射,用中间表+FC的方式做到功能模块的抽象实现,不同的产线调用相同的FC。经过以下优化后,项目包可以下载到硬件PLC,而且还有多余的空间存储调度系统的项目,并且能够缓存2小时的工单数据、生产记录。


2024年2月28日

Thingworx连接Access数据库

最近在研究Thingworx中连接Access数据库的方法。

PTC官方建议的方法是搭建Thingworx Edge,然后在Edge中安装ADO Service connectivity,此方法非常地烦琐,也缺少这方面的文档。

于是我另外尝试了几种方法。

方法1:通过SQL Server连接Access数据库。

SQL Server中可以通过Linked Servers连接外部数据库,如SQL Server、Oracle、Access等。

通过使用对应的Provider,可以将外部数据库映射到本地。

对于连接Access数据库,可以使用MS Office 12.0 Access DB Engine OLE DB Provider或Microsoft OLE DB Provider for ODBC Driver这两个Provider。

我测试发现ODBC的方式失败。

而在测试MS Office 12.0 Access DB Engine OLE DB Provider时我发现有2个限制:必须使用SQL Server正式版(Express版本失败),Access数据库不能使用密码。如果数据库没有此Provider则需要安装Microsoft Access Database Engine。

建立Linked Server之后,我们可以将Access的表映射到SQL Server的视图,这样处理之后就可以象本地的对象一样使用了。


方法2:在Access中连接SQL Server。

这个方法最简单,很容易实现,也支持 SQL Server Express。

缺点是只能单向从Access向SQL Server读写数据。

如果我们希望通过SQL Server查询Access中的数据,则需要在Access中编写查询语句,手动将Access数据同步到SQL Server,然后在SQL Server查询本地表。


方法3:通过Kepware ODBC Driver进行数据转换。

Kepware的ODBC插件能够将ODBC数据库中的数据直接转换成OPC Tag,结构为:表Tag Group >> 字段Tag Group >> 记录Tag。

如果我们仅仅是读写特定表、特定字段的特定行,则可以用这种方式从Thingworx中读写数据。

如果涉及到大数据量、较复杂的查询,则这种方式不合适。