大家好,今天在使用Amesim电路库元件的时候,突然想到做一个跑马灯。在2006年的时候,国内很多手机都会在手机一圈带上跑马灯,当播放音乐或者来电话的时候,这一圈灯就会五颜六色的转起来。
所以,我就用Amesim里面的中控台模块也做了一个跑马灯动画,而且速度实时可调,做起来非常容易,我先给大家看一下效果,再大致介绍一些步骤,文末会留下模型下载链接供大家玩。
上图中,我们可以看到随着左侧滑块对时间间隔的调整,跑马灯的点亮间隔速度也会不断变化。接下来我们大致讲解一下制作过程。
第1步:建立电路
这些元件都是基础电路库和信号库的基本元件。最左侧的是电源,电压值受信号控制。将电源分为8路,每一路添加一个开关和一个电阻,电阻用来模拟灯。
第2步:建立状态机控制灯的亮灭
状态机如下,左侧元件用来在仿真过程中,实时接收滑块发送的时间间隔信息,根据时间间隔不断的发送8个开关的状态信号。状态机内部在切换灯的亮灭的时候,用after(tim)指令延迟每个状态的切换速度,tim这个值是取决于滑块给出的时间。
第3步:制作动画要素
将左侧的灯、滑块等元件,拖入空白区域,然后将8个灯的数据与动画内容关联。
第4步:运行仿真,实时调节
在实时调节过程中,Amesim运行过程中,下面两个元件要配合使用。下图左侧第一个元件是为了限制仿真速度的,如果不限制就很快完成仿真,来不及调整滑块,添加了以后仿真速度就和真实时间一致了。第二个是Amesim中唯一允许在仿真过程中不断更改参数的元件,用来在仿真过程中不断调节时间间隔。
今天介绍的内容主要包括基础电路元件、远程信号接口、动画、状态机等基础功能,实际上Amesim在可视化和动画方面的工具非常丰富,这样大家做完模型,还可以动态的模拟或者演示。