資料介紹
描述
這個項目只是一個實驗,使用 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 三相反應式步進電機細分驅動器
- EPSON的IMU M-G330PDG0可應用于測繪巡檢機載掛載 811次閱讀
- 步進電機控制器電路圖 步進電機控制器的分類及其特點 6.5k次閱讀
- 一種易于實現的無外部設備IMU校準方法 2.5k次閱讀
- MEMS IMU/陀螺儀對準的基礎知識 6.3k次閱讀
- 單極步進電機驅動器的電路設計 4.4k次閱讀
- 雙極步進電機驅動器電路圖 6.1k次閱讀
- 如何使用M5Stick和M5Stamp觸發藍牙操作BLE通信 4.9k次閱讀
- P110C如何操控3臺步進電機 3.3k次閱讀
- 寬禁帶器件和仿真環境介紹 2k次閱讀
- 步進電機驅動器有什么參數_步進電機驅動器常見故障維修 1.8w次閱讀
- 微雪電子5V步進電機|5V Step Motor介紹 4.4k次閱讀
- dfrobot42步進電機簡介 8.1k次閱讀
- 步進電機控制器原理_步進電機控制器編程實例 1.7w次閱讀
- 慣性測量裝置IMU的用途_IMU在主機應用處理器的功能 1.2w次閱讀
- IMU中傳感器的功能_IMU應用實例_IMU解決方案 3w次閱讀
下載排行
本周
- 1新一代網絡可視化(NPB 2.0)
- 3.40 MB | 1次下載 | 免費
- 2冷柜-電氣控制系統講解
- 13.68 MB | 1次下載 | 10 積分
- 3MDD品牌三極管MMBT3906數據手冊
- 2.33 MB | 次下載 | 免費
- 4MDD品牌三極管S9012數據手冊
- 2.62 MB | 次下載 | 免費
- 5LAT1218 如何選擇和設置外部晶體適配 BlueNRG-X
- 0.60 MB | 次下載 | 3 積分
- 6LAT1216 Blue NRG-1/2 系列芯片 Flash 操作與 BLE 事件的互斥處理
- 0.89 MB | 次下載 | 3 積分
- 7收音環繞擴音機 AVR-1507手冊
- 2.50 MB | 次下載 | 免費
- 8MS1000TA 超聲波測量模擬前端芯片技術手冊
- 0.60 MB | 次下載 | 免費
本月
- 1愛華AIWA HS-J202維修手冊
- 3.34 MB | 37次下載 | 免費
- 2PC5502負載均流控制電路數據手冊
- 1.63 MB | 23次下載 | 免費
- 3NB-IoT芯片廠商的資料說明
- 0.31 MB | 22次下載 | 1 積分
- 4UWB653Pro USB口測距通信定位模塊規格書
- 838.47 KB | 5次下載 | 免費
- 5蘇泊爾DCL6907(即CHK-S007)單芯片電磁爐原理圖資料
- 0.04 MB | 4次下載 | 1 積分
- 6蘇泊爾DCL6909(即CHK-S009)單芯片電磁爐原理圖資料
- 0.08 MB | 2次下載 | 1 積分
- 7100W準諧振反激式恒流電源電路圖資料
- 0.09 MB | 2次下載 | 1 積分
- 8FS8025B USB的PD和OC快充協議電壓誘騙控制器IC技術手冊
- 1.81 MB | 1次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935137次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191439次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183353次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81602次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73822次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發燒友App





創作
發文章
發帖
提問
發資料
發視頻
上傳資料賺積分
評論