车辆调度系统的设计
Ofweek 2022-12-05

  一、车辆调度系统的整体设计:

  整个系统包括四个部分(1)通信主站;(2)车载从站;(3)通信链路。(4)系统监控部分。下面对各个部分的功能做一个简单的介绍。

  (1)通信主站:完成信息的转发,它是连接系统监控部分和车载从站的纽带,它将从系统监控部分来的信息转发给车载从站。并且接收车载从站的信息,并将信息上传给系统监控部分。

  (2)车载从站:被监控的对象,接收监控调度命令,并可以返回自己的状态信息。状态信息的取得是依靠在车载从站中的GPS接收机来完成车辆位置和速度信息等的采集工作。

  (3)通信链路:完成通信主站和车载从站的信息传递及通信主站和系统监控部分的信息交互。其中前者在本次设计中是以GSM手机模块做为通信的工具,而后者是采用RS232或USB来实现的。

  (4)系统监控部分:以图形的方式将被监控车辆的位置信息显示在电子地图上(GIS,地理信息系统的采用),并且可以显示其状态等文字信息。并且可以通过系统监控部分的人机界面来完成调度命令等信息的输入。由于在很多的论文中包含了这些车辆监控系统的基本组成元素,所以在这里就简单的介绍一下。相关内容可以参考有关的论文资料。下面重点讨论UC/OS-II的内核调度机理、操作系统的移植、基于状态机的嵌入式系统程序开发和硬件设计方面的问题。图一给初一个车辆监控系统的示意图。

  二、操作系统的内核调度机理:

  由于本系统对时性要求不是很强,采用了UC/OS-II这种简单的源码开发的操作系统。由于UC/OS-II是以任务为基础进行调度的。所以系统中所要处理的中间结果或响应外部的输入和输出,都应该在任务中完成。任务的调度是基于优先级的(UC/OS不支持时间片轮转的方法)。在多任务调度开始后,时钟节拍开始工作,时钟节拍产生周期性的中断,时钟节拍提供延时或超时的依据。多任务启动之前应该先进行初始化的工作,包括CPU、TCB(任务控制块)、ECB(事件控制块)和操作系统本身的初始化等。初始化完毕后多任务启动,系统总是运行就绪状态优先级最高的任务。由于任务本身是一个无限的循环,所以任务中必须包含引起任务切换的函数,如OSTimeDly()、OSSemPend()等,执行到这些函数时将引起任务的切换,即任务的调度。任务切换之前应该保护现场。任务之间要进行通信,通信的方式很多,可以采用全局变量、共享存储区等一些常用的方式,但在采用UC/OS-II的系统中任务之间的通信更多采用信号量、消息邮箱等进行。

  三、操作系统的移植:

  将UC/OS-II这个操作系统移植到三星公司ARM7TDMI S3C44B0X上要注意OSCtxSW()这个任务切换函数,其中任务切换的核心是利用出栈指令将各个任务的工作现场加以恢复。利用中断返回指令改变PC的指针达到任务切换的目的。它实际上是从任务堆栈中恢复处理器所有的寄存器,并且执行中断返回指令。实际的移植是用软件来模拟中断的发生。移植中的关键问题是如何构造任务堆栈及任务切换时的出栈顺序。而任务区堆栈初始化主要是模拟任务被中断后堆栈中的内容。另值得注意的是开关中断的函数OS_ENTERCRITICAL()和OS_EXIT_CRITICAL()这个函数。这两个函数实现了对临界区内容的保护。

  四、基于状态机的程序设计:

  整个系统的软件设计采用任务加状态机的设计方法,由于系统中采用了UC/OS-II的操作系统,所以系统中所有事件处理都采用任务调度的方式,任务在操作系统得调度下运行。而对于每个任务采用基于状态机的设计方法,引起系统中某个状态发生转移的事件可能是信号量、也可能是其它的事件。下面对状态机的有关内容加以介绍。

  状态机可以看成是一个状态和转换的图,描述了应用程序对接收到事件的响应。

  状态机的执行:状态机在某个时刻处理某个事件而在处理另外的事件之前必须完成对这个事件的处理并得到结果。

  基于状态机的程序执行过程是这样的:在任何时候都存在一个或者多个状态机活动的状态。如果一个状态是活动的,那么离开这个状态的转换可能会激发,引起一个事件的执行,并使得另一个状态或位于初始状态位置的状态激活(下一个状态处于初始状态)。

  状态机它是说明状态机的对象在对象自己的生命期中事件的所经历的状态序列以及它们对那些事件的响应。可以这样理解状态机状态机是对象的状态在事件的作用下从一个状态转移到另一个状态。

  状态机中的几个基本概念:

  1.状态(state):是指在对象的生命期中的一个条件或状况,在此期间对象将满足某些条件、执行某些活动或等待某些事件。

  2.事件(event)是对一个在时间和空间上占有一定位置的有意义的事情的说明。在状态机中一个事件的产生可以引起一次状态转换。

  3.转换(transition)是两个状态之间的一种关系,它指明对象在第一个状态中执行的一定的动作,并当特定事件或特定条件满足时进入第二个状态。

  在嵌入式系统的程序设计中,应该注意的另一个问题是函数的可重入问题, 可重入函数可以被递归调用,可以同时被两个或多个进程调用,这就要求在编译的时候要为可重入函数提供一个模拟堆栈区。

  图二是设计中采用状态机这种设计方法设计的系统程序中LCD显示部份。下面是对图二的解释。

  其中菜单1是显示欢迎界面(就是上面提到的状态);菜单2是发送短消息;菜单3是记录发送短消息内容的;菜单4是用来读取接收到的短消息。具体的状态转移过程是这样的,当显示处于欢迎界面的时候,在这个状态下,如向下的按键被按下(这就是一个事件)或发送短消息的键被按下,则系统状态转移到菜单2(发生了一次状态转移,下面和这是类似的,故相应的分析省略了。);在这个状态下,当向下按键被按下或系统要输入发送短消息的内容时候,系统状态从菜单2进入菜单3;在这个状态下,当向下的键盘被按下,系统的状态转移到菜单4;读取短消息结束时,系统状态返回到欢迎界面。实际的系统还有返回按键等,这里只是用这个图简单说明采用状态机的程序设计方法。

  五、硬件设计:

  为了从分利用S3C44B0X的时钟频率高的特点,减小S3C44B0X在取指和存取数据的延迟,系统中采用将代码固化在FLASH中,并在系统启动后将代码从FLASH拷贝到SDRAM中运行。并且系统中采用PDIUSBD12做为通信主站和PC上的系统监控部分之间通信。比起RS232串行通信方式,速度有很大的液提高。尤其在调度的车辆数量比较多的时候其速度优势是比较明显的。

  六、总结:

  经过系统的运行,系统达到了设计的要求。

声明: 本文转载自其它媒体或授权刊载,目的在于信息传递,并不代表本站赞同其观点和对其真实性负责,如有新闻稿件和图片作品的内容、版权以及其它问题的,请联系我们及时删除。(联系我们,邮箱:evan.li@aspencore.com )
0
评论
  • 【7.24 深圳】2025国际AI+IoT生态发展大会/2025全球 MCU及嵌入式技术论坛


  • 相关技术文库
  • 工业
  • 安防
  • 航空
  • CAN
  • 单片机的I2C和SPI通信的含义

    I2C和SPI是两种不同的通信协议。 当我们听到这个协议时,它似乎是不可实现的。事实上,协议只是人们定义的一个标准。我们只需要按照这个标准去做。例如,如果公司说我们早上9点上班,我们9点上班,或者我们扣...

    前天
  • 浅析基于MB86R01的汽车数字化虚拟仪表设计

    随着汽车、通信、信息电器、医疗、军事等行业的巨大的智能化需要,嵌入式软件及系统发展迅速。微处理器从8位到16位、32位甚至64位,从支持单一品种的CPU芯片到支持多品种的,从单一内核到除了内核外还提供其它功能...

    07-08
  • 基于蓝牙技术的汽车驾驶盘控制系统

    摘 要:介绍了一种基于蓝牙技术的方向盘控制系统设计方案。利用蓝牙传输技术实现汽车方向盘面板开关电子化优化设计,克服传统驾驶过程中需要低头找开关的弊端,使得大部分操作在方向盘上实现,汽车驾驶更便捷。控制...

    07-08
  • 逆变器有何注意事项?安装逆变器风扇有何要点?

    逆变器是一种转换器,在工业应用中,逆变器具有重要意义。对于逆变器,小编曾对逆变器的安装、离网逆变器等知识有所介绍。为增进大家对逆变器的认识,本文将对逆变器使用注意事项以及逆变器风扇安装注意事项予以解...

    07-07
  • 电气火灾监控系统

    电气火灾监控系统,特点在于漏电监控方面属于先期预报警系统。与传统火灾自动报警系统不同的是,电气火灾监控系统早期报警是为了避免损失,而传统火灾自动报警系统是为了减少损失。所以,这就是说为什么不管是新建...

    07-04
  • 基于C8051F500的数控恒流源设计

    本文给出了一种基于C8051F021和RA8835实现的低成本液晶显示方案。随着电子产品设计技术的不断发展,电子产品的设计,尤其是人机交互界面的设计日益趋向人性化。这其中的液晶显示屏以其具有能显示复杂文字及图形、显...

    07-02
  • 大佬带你谈谈步进电机,啥又是直流电机

    电机是诸多电子设备中都存在,由此可见电机的重要性。在往期文章中,小编对伺服电机、变频电机都有所介绍。为增进大家对电机的了解,本文将对步进电机和直流电机加以阐述。如果你对电机相关内容具有兴趣,不妨继续...

    06-27
  • 同步、异步电机有何区别?高、低速电机是什么?

    电机是工业设备中的重要存在之一,对于电机,大家应当有所了解。为增进大家对电机的了解,本文将对同步电机、异步电机、同步电机和异步电机的区别、高速电机和低速电机予以介绍。如果你对电机具有兴趣,不妨继续往...

    06-27
  • 步进电机知识详解,再不怕看不懂步进电机了!

    点击技成培训置顶,每日7:30准时为您推送

    06-26
下载排行榜
更多
评测报告
更多
广告