在这个例子中,我们考虑在连接外部设备的AnyMath中建模。 运行AnyMath的计算机的COM端口处于向Arduino MEGA微控制器的COM端口发送消息的模式。 对微控制器上的消息的接收进行处理以控制内置LED。 在执行期间调整模型参数允许您更改传输到Arduino的数据。
AnyMath具有[连接外部设备]的能力[1] -
如例如COM端口。 不仅办公室和多媒体设备可以通过这个接口连接,而且仪器设备-传感器,微控制器,可编程逻辑控制器。
为了熟悉在AnyMath模型中使用COM连接的可能性,在本例中,我们将向Arduino MEGA微控制器发送数据-周期性离散信号。
[1]:https://engee.com/helpcenter/stable/cn/engee-hardware/integration-with-hardware.html
示例模型 - com_send_blink.engeeInterfaces -> COM
*[COM Setup][1]-用于连接配置,
*[COM TX][2]-用于通过串行接口从AnyMath传输数据。
[1]:https://engee.com/helpcenter/stable/cn/hardware-com/com-setup.html
[2]:https://engee.com/helpcenter/stable/cn/hardware-com/com-tx.html
.png)
界面设置,块 COM Setup
*端口名称适用于Windows操作系统,例如"COM5";
*传输速率,波特率-9600;
*接收和发送的数据量,bit-8;
*接收-发送停止位数,bit-1;
*没有奇偶校验位。
在发射机单元 COM TX
该块的输入被传输:
*要传输的数据数组中的元素数:格式中的数字 UInt32
*要以格式传输的数据向量 UInt8
第二个输入将提供幅度=1的周期性脉冲信号,填充因子
在AnyMath中启动模型之前,有必要执行几个准备动作,如[手册][1]中所述。
[1]:https://engee.com/helpcenter/stable/cn/engee-hardware/integration-with-hardware.html
在AnyMath命令提示符中运行以下命令:
</no-translation>`bash engee.package.install("AnyMath-Device-Manager") <no-translation>
执行命令后,将显示以下消息,指示在AnyMath中成功安装外部硬件支持包:
.png)
根据给定的链接,根据操作系统,您需要下载存档,解压缩并运行客户端程序。
接下来,在客户端程序打开的窗口中,您必须输入接收到的连接链接并单击"连接"按钮:
.png)
消息"与服务器的连接已建立! 客户端程序窗口中的连接状态"已连接"表示AnyMath已访问计算机接口。
操作过程中不要关闭用户程序窗口,否则连接将丢失。
现在我们将设备连接到模型中指定的COM5端口。
根据此示例,您将设备连接到的端口的名称可能已断开连接。 确定设备连接到的端口的名称,并在模型接口设置块中进行设置(COM SetupCOM TX
在此示例中,Arduino MEGA连接到"COM5"端口,如Arduino IDE中的连接状态所示。:
.png)
您还可以在Arduino IDE连接设置中确定端口。:
.png)
草图中显示了处理Arduino通过串行端口从AnyMath接收的数据的程序 arduino_com_read_sketch.ino
该程序的操作原理在草图的注释中有详细描述。 工作的本质如下。 如果控制器从AnyMath收到"1",则点亮板上的内置LED,如果没有收到"1",则LED不亮。
要对Arduino Mega进行编程,只需执行以下操作:
*下载文件夹 arduino_com_read_sketch
*在Arduino IDE中打开草图,
*识别电路板型号 - Arduino Mega or Mega 2560COM5
*检查草图,
*上传到董事会。
如果下载和编译成功,您可以继续在AnyMath中执行模型,该模型将通过COM向Arduino MEGA发送信号。
在AnyMath中启动模型之前,请确保以下步骤
其次是:>1。 已安装外部硬件支持包。
> 2. 支持包中的客户端程序已启动。
> 3. 客户端程序中的AnyMath连接状态为"已连接"。
> 4. 控制器连接在COM口中。
> 5. 控制器上运行COM信号处理程序。
6. 控制器连接到的COM端口的名称与模型的接口块中设置的名称相对应。
让我们在AnyMath中运行模型,编译后,我们可以观察到AnyMath图形上形成脉冲信号以及Arduino MEGA板上LED的同步闪烁。:
.gif)
块的参数可以在模型的操作期间改变,换句话说,"在飞行中"。 从上面的视频可以看出,AnyMath成功地通过COM口向单片机发送了一个频率可变的周期脉冲信号。
在示例中,我们讨论了配置与外部设备的连接的过程,并且还描述了如何开始将信号从AnyMath传输到个人计算机的串行端口。 示例模型生成一个周期脉冲信号,连接到计算机的Arduino MEGA微控制器通过COM端口接收此信号并进一步处理。