資料介紹
描述
這個項目只是一個實驗,使用 rs485 在 6060 推送上移動步進器。它使用加速度計檢查傾斜方向并相應地移動步進器。
?

用于步進器和 RS485 反饋的 UIFLOW 代碼塊
?
?
?
from m5stack import *
from m5ui import *
from uiflow import *
import imu
setScreenColor(0x111111)
imu0 = imu.IMU()
label1 = M5TextBox(74, 114, "Text", lcd.FONT_Default,0xFFFFFF, rotate=90)
rectangle0 = M5Rect(0, 0, 50, 10, 0xFFFFFF, 0xFFFFFF)
label0 = M5TextBox(33, 15, "Text", lcd.FONT_DejaVu24,0xFFFFFF, rotate=90)
name = None
move = None
message = None
uart_val = None
uart_int = None
uart = None
acc_dir = None
pos = None
prev_acc_dir = None
out = None
id_set = None
checked_pos = None
def get_serial_pos(name):
global move, message, uart_val, uart_int, uart, acc_dir, pos, prev_acc_dir, out, id_set, checked_pos
message = ('ID' + ((name + 'P')))
uart.write(str(message)+"\r\n")
uart_val = str((uart.readline()))
wait_ms(20)
uart_val = uart_val.replace("b'", '')
uart_val = uart_val.replace("\\r\\n'", '')
uart_val = uart_val.replace('ok', '')
uart_val = uart_val.strip()
label1.setText(str(uart_val))
return uart_val
def draw_screen():
global name, move, message, uart_val, uart_int, uart, acc_dir, pos, prev_acc_dir, out, id_set, checked_pos
label1.hide()
label0.hide()
label0.setColor(0x339999)
label0.setRotate(90)
label0.setFont(lcd.FONT_DejaVu18)
label1.setRotate(90)
rectangle0.setBgColor(0x339999)
rectangle0.setSize(50, 10)
rectangle0.setPosition(0, pos)
def check_id():
global name, move, message, uart_val, uart_int, uart, acc_dir, pos, prev_acc_dir, out, id_set, checked_pos
uart.write("ID"+"\r\n")
wait_ms(150)
def get_accel_dir():
global name, move, message, uart_val, uart_int, uart, acc_dir, pos, prev_acc_dir, out, id_set, checked_pos
acc_dir = imu0.acceleration[1]
if acc_dir > 0.32:
pos = pos + 1
wait_ms(120)
if pos >= 50:
pos = 50
if acc_dir < 0.12:
pos = pos - 1
wait_ms(120)
if pos <= 0:
pos = 0
label0.setPosition(y=(15 + (pos * 3)))
label0.setText(str(pos))
rectangle0.setSize(height=(10 + (pos * 3)))
return pos
def move_stepper(name, move):
global message, uart_val, uart_int, uart, acc_dir, pos, prev_acc_dir, out, id_set, checked_pos
move = str(move)
message = ('ID' + ((name + ':X')))
out = (message + move)
uart.write(str(out)+"\r\n")
wait_ms(20)
def set_id(name):
global move, message, uart_val, uart_int, uart, acc_dir, pos, prev_acc_dir, out, id_set, checked_pos
message = ('ID=' + name)
uart.write(str(id_set)+"\r\n")
wait_ms(150)
def move_home(name):
global move, message, uart_val, uart_int, uart, acc_dir, pos, prev_acc_dir, out, id_set, checked_pos
message = ('ID' + ((name + 'Z')))
uart.write(str(str(message))+"\r\n")
label1.setText('home')
wait(3)
uart_int = 0
pos = 0
prev_acc_dir = 0
uart = machine.UART(1, tx=0, rx=26)
uart.init(9600, bits=8, parity=None, stop=1)
name = '123'
draw_screen()
check_id()
set_id(name)
move_home(name)
checked_pos = get_serial_pos(name)
while True:
acc_dir = get_accel_dir()
checked_pos = get_serial_pos('123')
if acc_dir != prev_acc_dir:
move_stepper(name, acc_dir)
prev_acc_dir = acc_dir
wait_ms(2)
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- M-G552PR1IMU(慣性測量單元)RS422接口傳感器
- M-G552PC7 IMU(慣性測量單元)CAN接口
- IMU(慣性測量單元)CAN接口M-G552PC1
- 慣性測量單元(IMU)CAN接口:M-G552PJ7
- M-G370PDF1(IMU)
- M-G370PDS慣性測量單元(IMU)
- 基于M5Stick-V和M5Stack的辦公桌機器人助手
- RTLapseCAM:樹脂打印延時攝影 - M5Stick-C Plus&GoPro
- M5Stick C開源分享
- CS5261/C轉HDMI_4k@30Hz帶5V慢充參考設計
- 臺信接近開關傳感器E2EL-C1R5F1-M3L 1次下載
- 臺信接近開關傳感器E2EL-C1R5E1-M3L 8次下載
- 臺信接近開關傳感器E2EL-C1R5F2-M3L 5次下載
- TQP4M9072數字步進衰減器的詳細數據手冊免費下載
- SJ-3C075M 三相反應式步進電機細分驅動器
- 步進電機控制器電路圖 步進電機控制器的分類及其特點 3539次閱讀
- 一種易于實現的無外部設備IMU校準方法 1520次閱讀
- MEMS IMU/陀螺儀對準的基礎知識 4934次閱讀
- 單極步進電機驅動器的電路設計 3085次閱讀
- 雙極步進電機驅動器電路圖 4447次閱讀
- 如何使用M5Stick和M5Stamp觸發藍牙操作BLE通信 3758次閱讀
- P110C如何操控3臺步進電機 2771次閱讀
- 寬禁帶器件和仿真環境介紹 1582次閱讀
- 步進電機驅動器有什么參數_步進電機驅動器常見故障維修 1.6w次閱讀
- 基于STM32F103C6與CAN收發器L9616實現一體化步進電機驅動器設計 5963次閱讀
- 微雪電子5V步進電機|5V Step Motor介紹 3657次閱讀
- dfrobot42步進電機簡介 6660次閱讀
- 步進電機控制器原理_步進電機控制器編程實例 1.6w次閱讀
- 慣性測量裝置IMU的用途_IMU在主機應用處理器的功能 1w次閱讀
- IMU中傳感器的功能_IMU應用實例_IMU解決方案 2.8w次閱讀
下載排行
本周
- 1華為硬件工程師手冊目前最全版本
- 1.02 MB | 7次下載 | 2 積分
- 2STM32單片機無人機設計
- 8.81 MB | 2次下載 | 免費
- 3TTL通往RS232神奇之黑盒(一)(可下載)
- 515.72 KB | 2次下載 | 免費
- 4TP4336 線性充電,同步升壓1A 同步移動電源解決方案
- 764.17 KB | 1次下載 | 免費
- 5直流有刷電機驅動PCB設計注意事項講解(可下載)
- 1.01 MB | 1次下載 | 免費
- 6晶體諧振器的工作原理
- 736.44 KB | 1次下載 | 免費
- 7LLC的死區時間對DS波形的影響(可下載)
- 675.86 KB | 1次下載 | 免費
- 8電子產品設計與調試
- 14.66 MB | 次下載 | 8 積分
本月
- 1STM32CubeMX用于STM32配置和初始化C代碼生成
- 21.90 MB | 631次下載 | 免費
- 2STM32開發板教程之STM32開發指南免費下載
- 24.88 MB | 176次下載 | 3 積分
- 3EN60335-1安規標準 中文版本
- 1.86 MB | 53次下載 | 1 積分
- 4OAH0428最新規格書(中文)
- 2.52 MB | 28次下載 | 10 積分
- 5UHV系列雷電沖擊電壓發生器試驗裝置詳細說明使用
- 1.07 MB | 17次下載 | 免費
- 6介紹一些常用的電子元器件
- 3.20 MB | 8次下載 | 免費
- 7麻將機升降電路
- 0.12 MB | 7次下載 | 1 積分
- 8華為硬件工程師手冊目前最全版本
- 1.02 MB | 7次下載 | 2 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935124次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
- 1.48MB | 420063次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233088次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191371次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183336次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81583次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73814次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65988次下載 | 10 積分
評論