终于写到100集了~~

一、实时操作系统

想象这样一个场景:周五,结束了一周忙碌的工作,回到家,防盗门仿佛是认识你一般自动打开,进到屋中,电灯自动打开,色温和亮度都刚刚好,地板早已被扫地机器人打扫得干干净净,窗帘被电机带动缓缓展开窗外城市的夜景。你的屋子仿佛有了生命,它认识你,知道该怎么做来缓解你一天的疲惫。你坐到沙发之中,身体深深地陷了进去,这时空调轻轻地打开,徐徐地凉风温柔地抚摸着你疲惫的脸颊,你已经被睡梦渐渐抓住,眼皮也无法继续坚守岗位,家中音响好像捕捉到了你的困意,缓缓地放出了你最爱的音乐,像一位温柔的少女,引你彻底陷入酣睡。

清晨太阳初升,阳光像金砂般撒入室内,除了在沙发中安睡的你以外,仿佛昨夜的一切都像梦境一般,从未发生过。让我们结束想象,这听上去像未来的魔法一般的生活,现在已经悄然走进了我们的现实,而实现它的便是未来物联网重要的方向之一——智能家居。而在未来助力我们完成智能生活的一个主要部分就是实时操作系统RTOS

在当前工业4.0,智能制造,物联网IoT和工业物联网IoT蓬勃发展的大环境下,实时操作系统(RTOS)将有更广泛的应用前景。那么到底什么是实时操作系统呢?本文笔者将带大家全面了解一下实时操作系统。

首先,我们需要明确一下,什么叫操作系统。

在一个传统的计算机系统中,大致可以分为四个部分:

  • 硬件(Hardware);
  • 操作系统(operating system);
  • 应用程序(application programs);
  • 使用者(user)。

其中,硬件包括了我们所熟悉的中央处理器,显卡,显示器,鼠标键盘等等看得见摸得着的具体器件,为整个系统提供了基础的计算资源;而应用程序就是为完成某项或多项特定工作的计算机程序,它运行在用户模式,可以和用户进行交互,具有可视的用户界面。而操作系统就是架在它们之间的桥梁,起到了沟通对接软件和硬件的作用。但是,其主要是和硬件打交道,负责协调分配计算资源和内存资源给不同的应用程序使用,并防止系统出现故障。当一个计算机系统中运行着大量应用程序的时候,这时操作系统就起到了一个调度者的作用,协调调度各个应用程序的资源,通过一个调度算法和内存管理算法尽可能把资源公平,有效率地分配给不同的程序。

通常一个通用的操作系统应该有以下几种功能:

堆栈和内存管理、任务(应用程序)的调度管理、中断和定时器管理、输入输出管理、文件管理、资源管理、队列管理。

嵌入式分享合集100_应用程序

值得注意的一点是,操作系统作为系统软件的一部分,其本身也会占用一定系统资源,在资源格外紧张的单片机系统中要格外引起关注,所以,在实际应用中可能需要根据需求剪裁操作系统的大小和功能。

了解了操作系统,我们说回实时操作系统RTOS(RTOS-Real Time Operating System)。这之中的实时(Real Time)指的是在系统运行的某种任务,或者说实现一个功能的线程,要在一个规定的时间内完成,而这之中又会被分为硬实时软实时。硬实时要求在规定的时间内必须完成操作,不允许超时;而软实时里对处理过程超时的要求则没有很严格。

总结来说,软实时只能提供统计意义上的实时。例如,有的应用要求系统在95%的情况下都会确保在规定的时间内完成某个动作,而不一定要求100%。在许多情况下,这样的“软性”正确率已经可以达到用户期望的水平。比如,用户在操作DVD播放机时,只要98%的情况都能正常播放,用户可能就满意了;而发射卫星、控制核反应堆的应用系统,这些系统的实时性必须达到100%,是绝对不允许出现意外。

有人也许会说,如今处理器强大的算力能不能保证系统的实时性呢?很遗憾这可能是不行的。比如,在一个汽车系统中,车载的ECU有着很强大的算力,但是如果遭遇了突如其来的车祸,安全气囊要求必须在20ms内完全充气展开,但是与此同时,汽车中还有大量其他的程序运行用于监控汽车其他状态,大量复杂的计算导致了安全气囊的响应时间超过规定的时间,实时性无法得到保障导致系统失效和人员伤亡,这将会是非常严重的系统问题。

在如今比较流行的实时操作系统中,最流行的依旧是最成熟的Linux系统,其次Windows系统,而我们今天要讨论的FreeRTOS则位居第三名。比较喜人的是,我们的一些国产操作系统也开始逐渐进入开发者的视角,比如腾讯发布和开源的TencentOS tiny,这是一个面向物联网的实时操作系统;华为也推出了鸿蒙LiteOS, 万物互联未来可期。

嵌入式分享合集100_嵌入式硬件_02


 2018年IoT设备所采用操作系统的倾向性调查

FreeRTOS是RTOS的一种,尺寸非常小,可运行于微控制器上。FreeRTOS是由美国的 Richard Barry 于 2003 年发布,Richard Barry 是 FreeRTOS 的拥有者和维护者,在过去的十多年中 FreeRTOS 历经了 9 个版本,与众多半导体厂商合作密切, 累计开发者数百万,是目前市场占有率最高的 RTOS。它是一款“开源免费”的RTOS,遵循的是 GPLv2+的许可协议。

各位可以免费获取FreeRTOS的源代码,作为一款轻量化的操作系统,它具有任务管理、时间管理、信号量、消息队列、内存管理、记录功能、软件定时器、协程等功能,基本上可以满足单片机等,较小设备的需求,它的代码可移植、可裁减、调度策略灵活,在各种各样的单片机中的适应性十分良好。

总结来讲,FreeRTOS拥有的特点有:

  • FreeRTOS 的内核支持抢占式,合作式和时间片调度;
  • 提供了一个用于低功耗的 Tickless 模式;
  • 系统的组件在创建时可以选择动态或者静态的 RAM,比如任务、消息队列、信号量、软件定时器等等;
  • FreeRTOS-MPU 支持 Corex-M 系列中的 MPU 单元,如 STM32F429;
  • FreeRTOS 系统简单、小巧、易用,通常情况下内核占用 4k-9k 字节的空间;
  • 高可移植性,代码主要 C 语言编写;
  • 高效的软件定时器;
  • 强大的跟踪执行功能;
  • 堆栈溢出检测功能;
  • 任务数量不限;
  • 任务优先级不限。
二、磷酸铁锂电池 VS 三元锂电池

随着新能源汽车产业的发展,锂电池凭借着其诸多优势迅速吸引了大量的应用,而且目前应用较为广泛。作为高能量密度的动力电池——三元锂电池和磷酸铁锂电池,它们都属于锂电池的一种。今天来聊聊两者之间的不同。

一 两者特性的不同

1 安全性的区别:磷酸铁锂电池的安全性能是比三元锂电池要高的,主要是因为磷酸铁锂电池的耐热性能比较好,热失控温度可达到800度以上,即磷酸铁锂电池没达到800度基本是不会自燃的。而三元锂电池则不同,热失控温度基本在200度左右,所以对于炎热的地区来说,三元锂电池自燃的风险是会更高的。

2 使用寿命不同:磷酸铁锂电池它循环使用寿命比三元锂电池要更好,一般的三元锂电池它标称循环2000次左右,但它在循环使用不超过1000次的时候,它的容量就衰减到一半了,而磷酸铁锂电池只衰减20%左右。

3 能量密度不同:三元锂电池能量密度是要高于磷酸铁锂电池的,能量密度的高低就意味着续航能力的多少,就同样容量的电池,磷酸铁锂体积就比三元锂电池要大不少。

4 耐低温性能不同:三元锂电池它的耐低温性能要优于磷酸铁锂电池,比如说同样在零下20度的时候,三元锂电池能够释放出来大约70%左右的电量,而磷酸铁锂电池在同样的低温下大约只能释放出来50%左右的电量了。

在价格方面,三元锂电池的制作成本高,价格也比较高,而磷酸铁锂电池的价格要低一些。

总的来说,三元锂电池的能量密度高于磷酸铁锂电池,而磷酸铁锂电池的安全性普遍要好于三元锂电池。

二 应用场景的不同

1 磷酸铁锂电池

(1)大型电动车辆:公交车、电动汽车、景点游览车及混合动力车等;

(2)轻型电动车:电动自行车、高尔夫球车、小型平板电瓶车、铲车、清洁车、电动轮椅等;

(3)电动工具:电钻、电锯、割草机等。

2 三元锂电池:广泛应用于移动和无线电子设备、电动工具、混合动力和电动交通工具等领域。

三 两者的未来前景

行业研究机构高工产研锂电研究所(GGII)发布的数据显示,2021年中国磷酸铁锂电池出货量为117吉瓦时,同比暴涨270%;三元锂电池出货量109吉瓦时,同比增长127%。从2021年单月数据看,磷酸铁锂电池出货量已连续好几个月超过三元锂电池,主要原因有:

随着国内新能源汽车补贴预计将在2023年退出,三元锂电池凭借更高能量密度获得政策补贴的优势将有所减弱,价格较高,叠加未来几年电化学储能领域对磷酸铁锂电池的市场需求上扬,使得磷酸铁锂电池产量增速远超三元锂电池。      

磷酸铁锂电池自身的产品力也在快速提升。多位业内专家表示,目前磷酸铁锂电池的产品性能以及成本优势已十分突出。自2020年比亚迪推出磷酸铁锂刀片电池以来,能量密度不及三元锂电池的“传统劣势”有所减弱,同时持续的技术创新使得磷酸铁锂电池基本能满足续航600公里以下的全部车型需求,尤其是比亚迪、特斯拉等新能源车企为磷酸铁锂电池需求增长带来了强劲动力。

对于未来动力电池市场格局,中国科学院电工研究所教授陈永翀表示,“未来新能源汽车市场预期将更加细分,在短程低速或中短程电动车市场中,磷酸铁锂电池很可能维持主流地位,但对长程或其他用途车辆而言,三元锂电池也有望维持一定优势。”

三、三相电对地电压

 所谓对地电压,即电气设备发生接地故障时,接地设备的外壳、接地线、接地体等与零电位点之间的电位差,称为电气设备接地时的对地电压.

    相电压是相线对中性线的电压,对于任何一个三相变压器甚至单相变压器都有这个说法,也就是绕组的电压,决定这个电压的是绕组的匝数决定的.

    而对地电压,是对于接地系统而言的,如果变压器中性点或者单相中的零线(地)没有接地,就不存在对地电压的说法,因为系统和大地并没有电气连接,没有电的特性.

    对地电压很重要,它是我们确定带电设备或导线绝缘水平的依据,否则就危险了。如绝缘选择不满足要求,就引起放电,发生事故。  

    我国交流电压等级是750、500、330、220、110、60、35、10KV和380/220V,其中市电为380/220V。

    市电即我们所说的工频交流电(AC),其中工业用电为三相380V,是指相线(俗称火线)与相线间的电压为380V,如果是三相四线制,相线与零线间电压为220V±10%。因零线是接地的,故相线与地线间电压亦为220V±10%,民用电一般为单相220V,即火线与零线间电压为220V±10%。其实工业用电和民用电同为380/220V电源系统,只不过民用220V只是用其中的一相罢了。

    如果三相电的相线和地线间电压为380V,也就是相线和零线间电压为380V,就比市电电压为高,不适用于380/220V的电机、电器。三相电的其中的一条火线和地线之间的电压为220V。

嵌入式分享合集100_应用程序_03

 以下是一个理想的三相交流电压的数学式:

  V1 = Asin(2πft)=Asin(wt)

  V2 = Asin(2πft - 2π/3)=Asin(wt-2π/3)

  V3 = Asin(2πft + 2π/3)=Asin(wt+2π/3)

    其中A是电压的峰值,f则是交流电压的频率,。

    三相电负载的接法:

    分为三角形接法和Y形接法。

    三角形接法的负载引线为三条火线和一条地线,三条火线之间的电压为380V,任一火线对地线的电压为220V;

    Y形接法的负载引线为三条火线、一条零线和一条地线,三条火线之间的电压为380V,任一火线对零线或对地线的电压为220V。