MATLAB Answers

Call python stepper motor code to Matlab with Raspberry Pi

조회 수: 14(최근 30일)
Tharima Ferdausi
Tharima Ferdausi 2021년 3월 14일
편집: Prasanth Sunkara 2021년 3월 25일
Hello
This is a python code for a stepper motor with raspberry pi. I am trying to call this python code to Matlab but nothing is really happening. Using a def function and system command did not work. I want Matlab to call python to make the stepper motor rotate but I did get an error. What should I do?
# SPDX-FileCopyrightText: 2021 ladyada for Adafruit Industries
# SPDX-License-Identifier: MIT
"""Simple test for using adafruit_motorkit with a stepper motor"""
import time
import board
from adafruit_motorkit import MotorKit
kit = MotorKit(i2c=board.I2C())
#Number of times the shaft rotates and pauses (same as number of pictures)
for y in range (67):
#Input for range multiplied by 1.8 (step size) is amount of rotation (degrees)
for x in range(3):
#Moves the motor a single step (1.8 degrees)
kit.stepper1.onestep()
#Time between adjacent steps (seconds)
time.sleep(.5)
#Time for image capture (seconds)
time.sleep(2)

답변(2개)

Prasanth Sunkara
Prasanth Sunkara 2021년 3월 25일
편집: Prasanth Sunkara 2021년 3월 25일
Hi Tharima,
"system" function when called without passing "raspi" object will run the command on host PC on which the MATLAB is currently running.
What you need in this case is to make system command execute on Pi.
Alternatively, you can do the same thing python script is doing from MATLAB(or Simulink) support package for Raspberry Pi. The support package has MATLAB function/ Simulink blocks to work with servos, GPIOs, Audio, Video and other peripherals.
https://www.mathworks.com/help/supportpkg/raspberrypi/examples.html
Hope it helps!
Thanks,
Prasanth
  댓글 수: 1
Asvin Kumar
Asvin Kumar 2021년 3월 25일
Thanks for correcting me, Prasanth. Your answer is helpful.

댓글을 달려면 로그인하십시오.


Asvin Kumar
Asvin Kumar 2021년 3월 18일
편집: Asvin Kumar 2021년 3월 18일
This is not a MATLAB error. The output that you're seeing comes from the system. Refer doc page for system command's output.
This is likely caused because you don't have the 'board' python library installed. Are you sure the program 'StepperMATLABTest.py' works when called from Python?
  댓글 수: 1
Prasanth Sunkara
Prasanth Sunkara 2021년 3월 25일
This particular answer is relevant only for "OS command execution on the PC" which runs MATLAB.
Please see this to understand how you can run an OS command on Raspberry Pi from MATLAB.

댓글을 달려면 로그인하십시오.

제품


릴리스

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by