How to implement Serial Communication between Simulink (R2012b) and an Arduino?

2 visualizzazioni (ultimi 30 giorni)
I would like to have Simulink run a model (i.e. controller), transmit information to the Arduino, have the Arduino receive the data and implement some action based on the data.

Risposta accettata

MathWorks Support Team
MathWorks Support Team il 26 Giu 2024
Modificato: MathWorks Support Team il 26 Giu 2024
The solution is to run a model in Simulink using the play button, and run another model on the Arduino using the "Tools->Run on Target Hardware->Run" option.
I have included two models which perform this functionality. The transmitting model is called "SerialSend" and the receiving model is called "ArduinoReceive". The SerialSend model should be run by using the play button while the ArduinoReceive model should be run by selecting "Tools->Run on Target Hardware->Run" to push code to the Arduino. The transmitting model sends a pulse with values of 2 and 3. The pulse has a period of 4 seconds with a 50% duty cycle. The receiving model just checks to see if the value sent is a 2 or 3 and sends a corresponding boolean to pin 13. On the Arduino Mega 2560 and Uno this will cause the corresponding onboard LED to blink with a period of 4 seconds.
The transmitting model should not try to push code to the target by using the "Tools->Run on Target Hardware->Run" command. Doing so will push code to the Arduino and erase the original code, as you already discovered.
The SerialSend model uses the Instrument Control Toolbox "Serial Send" block to transmit data over the serial connection (i.e. usb programming cable). You will need to check the device manager to determine which COM port corresponds to the Arduino. The ArduinoReceive model should use an "Arduino Serial Receive" block.
  1 Commento
Walter Roberson
Walter Roberson il 15 Ott 2016
Approximate translation:
Hello when you display the error message should disconnect your Arduino and connect it again and press reset, so you solve. regards

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Arduino Hardware in Help Center e File Exchange

Tag

Non è stata ancora inserito alcun tag.

Prodotti


Release

R2012b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by