主要内容

伺服控制

此示例显示如何使用Simulink支持包进行Arduino®万博1manbet万博1manbetxx硬件来控制标准伺服电机。

万博1manbetx支持的硬件:

  • arduino leonardo

  • Arduino Mega 2560.

  • Arduino Mega Adk.

  • Arduino Micro.

  • Arduino MKR1000

  • Arduino MKR WiFi 1010

  • Arduino MKR零

  • Arduino Nano 3.0.

  • Arduino Uno.

  • Arduino到期

  • Arduino Nano 33 IoT

此示例的可用版本:

Arduino Mega 2560董事会:arduino_servocontrol_sweep.

为Arduino Mega 2560预先配置了所提供的模型,可以在“支持的硬件”部分中列出的任何电路板上,通过在任务中描述的模型的配置参数对话框中更改“硬件板”参数,如此万博1manbetx这个例子中的1。

介绍

万博1manbet万博1manbetxxSimulink支持包用于Arduino硬件,您可以在Arduino Board上创建和运行Simulink®模型。该目标包括用于配置和访问Arduino传感器,执行器和通信接口的S万博1manbetximulink块库。

在此示例中,您将学习如何创建控制标准伺服电机的Simulink模型。万博1manbetx在标准伺服电机中,可以精确地设定轴位置,通常在0到180度之间。伺服电机用于许多工业,军事和消费者应用和产品。s manbetx 845

先决条件

在您开始此示例之前,我们建议您完成Arduino®硬件入门例子。

需要硬件

要运行此示例,您将需要以下硬件:

  • 万博1manbetx支持的Arduino Board.

  • USB电缆

  • 标准伺服电机

  • 电位计

  • CDS photocell.

  • 10个kohm电阻

  • 面包板电线

  • 小面包板(推荐)

任务1 - 配置支持的Arduino硬件的模型万博1manbetx

如果您的Arduino Board不是Arduino Mega 2560硬件,您将执行此任务。

在此任务中,您将为支持的Arduino板配置模型。万博1manbetx

1。在Simulin万博1manbetxk模型中,单击仿真>模型配置参数打开配置参数对话。

2。选择硬件实现窗格并从中选择所需的Arduino硬件硬件板参数列表。请勿更改任何其他设置。

3.点击好的

任务2 - 将伺服电机连接到Arduino板

在此任务中,您将电机连接到Arduino板。伺服电机有三根电线:电源,地和信号。如下所述连接它们。

1。将电源线(通常是红色)连接到5V引脚。

2。将接地线(通常是黑色)连接到地销。

3.将信号线(通常是橙色)连接到数字引脚4.请参阅在Arduino块上映射在支持PIN编号的文档中。万博1manbetx

任务3 - 通过内部源设置伺服电机位置

在此任务中,您将使用内部源设置伺服电机轴的位置。轴角度将在0到180度之间变化,上下。

1。打开伺服控制模型。

2。通知标准伺服写入堵塞。该块每隔0.01秒设置伺服电机轴的新角度。

3.在Simulin万博1manbetxk模型中,单击仿真>模型配置参数打开配置参数对话。

4.选择硬件实现窗格并从中选择所需的Arduino硬件硬件板参数列表。请勿更改任何其他设置。

5。在Simulin万博1manbetxk模型中,单击部署到硬件工具栏上的按钮。

6。当模型开始在Arduino板上运行时,请遵守0到180度之间的电机轴位置。

任务4通过电位计控制伺服电机位置

在此任务中,您将使用电位器手动设置伺服电机轴的位置。将外部电位器终端连接到Arduino板上的5V和GND引脚。将中间端子连接到模拟输入引脚0.随机旋转电位器,其电阻变化。结果,模拟输入引脚处的电压也变化。您的任务是将伺服电机角度设置为与此电压成比例。

1。在MATLAB®中,选择首页>新建> Simulink模型。万博1manbetx

2。进入SllaryBrowser.在Matlab®提示符。这将打开Simulink库浏览万博1manbetx器。

3.在Simuli万博1manbetxnk库浏览器中,导航到万博1manbet万博1manbetxxSimulink支持包用于Arduino Hardware> Common

4.拖着模拟输入块进入模型。双击块并设置PIN码到0,和采样时间到0.01秒。

5。拖着标准伺服写入块进入模型。双击块并设置PIN码到4。

6。连接模拟输入标准伺服写入块。

7。从Simu万博1manbetxlink Math操作库中,拖动获得块进入模型并将其放在连接的线上模拟输入标准伺服写入堵塞。双击获得块并将其值设置为0.1760(以模拟输入数字分辨率除以模拟输入数字分辨率的最大伺服电机位移i.180/1023)。

8。在Simulin万博1manbetxk模型中,单击仿真>模型配置参数打开配置参数对话。

9。选择硬件实现窗格并从中选择所需的Arduino硬件硬件板参数列表。请勿更改任何其他设置。

10。点击好的

11.在Simulin万博1manbetxk模型中,单击部署到硬件工具栏上的按钮。该模型现在将部署到Arduino硬件。

12.当模型开始在Arduino板上运行时,请观察到0到180度之间的电机轴。

如果您在如上所述创建模型时遇到问题,则可以使用伺服控制模型。

任务5 - 通过光电池控制伺服电机位置

在此任务中,您将创建一个模型,该模型根据光电池检测到的光强度设置伺服电机的位置。在暗室中,电机轴应定位在0度,而在明亮的房间,它应定位在180度。

使用光电池和电阻器代替任务中使用的电位器4.将光电池的一端连接到Arduino板上的5V引脚。接下来,将电阻的一端连接到电路板上的GND引脚。将光电池和电阻的另一端连接在一起,然后连接到板上的模拟输入引脚0。

该模型将类似于任务4中使用的模型。

其他要尝试的事情

在Arduino Block库中的其他块进行实验。例如:

  • 使用数字输入块根据外部控制信号或信号调节电机轴位置。

  • 使用标准伺服读取块读取电机轴位置并将其与所需位置进行比较。

概括

此示例为您展示了如何使用Simulink支持包来控制Arduino硬件万博1manbet万博1manbetxx来控制标准伺服电机。在这个例子中,您了解到:

  • 标准伺服写入块允许您设置伺服电机轴位置,通常在0到180度的范围内。

  • 模拟输入块测量施加到Arduino模拟输入引脚的电压。各种传感器可以连接到模拟销。