衡阳派盒市场营销有限公司

電子發燒友App

硬聲App

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示
電子發燒友網>電子資料下載>電子資料>在python3中制作腳本處理步進電機沿滑軌和滾珠絲杠的運動

在python3中制作腳本處理步進電機沿滑軌和滾珠絲杠的運動

2022-11-02 | zip | 1.07 MB | 次下載 | 免費

資料介紹

描述

你好,

很久以前我想嘗試處理一個新圖書館,但現在。那有意義嗎?可能是這樣,也可能不是,但源工作,機器和電氣板也是如此!

...

所以,我在幾年前的一些幫助下改變了源代碼!我還在 python3 中制作了一個小腳本來處理小型步進電機沿滑軌和滾珠絲杠的運動......

所以,這個簡單的任務需要這些組件:

  • 12VDC 鉛酸電池和/或 SLA 類型
  • 電機橋角
  • 兩條電源線和 GND 線連接到 Cape 和電池
  • 兩個正確尺寸的快速斷開器......使用適合您的電池端子的任何斷開器!
  • BeagleBone Green Gateway 或來自beagleboard.org板系列的其他板,即不包括 BBBlue、BBAI 和/或 PocketBeagle,除非您想讓它適用于這些板(它不是即插即用這三個板)。
  • 哦……您可能需要一把小一字螺絲刀來處理 Cape 上的連接器
  • Micro USB 轉 USB Type A 數據線
  • 以太網或 Wifi 訪問以獲取腳本和其他工具/實用程序

好的……所以到目前為止,我們可能會也可能還沒有收集到我們的工具。如果我們有并且準備好開始,讓我們開始吧。

...

?

poYBAGNggzeAevLgABCrRPCDyWU529.jpg
這是我用過的電池!
?

...

在這里你可以看到我為這個項目選擇的快速斷開的電線。

另外......還有一個交互式 Python3 腳本可以處理我們的步進電機使用情況:

https://github.com/silver2row/MotorBridgeCapeforBBG_BBB/tree/master

在上面你會看到我的 Seeed Studio Motor Bridge Cape lib 的分支。

我更改了一些項目以處理特定的數據轉換、庫更改和不推薦使用的庫。我還添加了一些庫。并改變了它們。幸運的是,在這個硬件領域有一些經驗并為這個想法增加了時間,我已經能夠輕松地適應變化。

...

那么,讓我們來看看這些變化:

在 MotorBridge.py 上,讓我們更改一些特定的行...

import Adafruit_GPIO.I2C as I2C
import Adafruit_BBIO.GPIO as GPIO
import time
Reset = "P9_23"
MotorBridge = I2C.Device(0x4b, 2)
GPIO.setup
(Reset, GPIO.OUT)

這個來源變成了這個想法:

from smbus2 import SMBus
import time
import pathlib

# reset pin is P9.23, i.e. gpio1.17
reset_pin = pathlib.Path('/sys/class/gpio/gpio49/direction')
reset_pin.write_text('low')

bus = SMBus('/dev/i2c-2')

現在,這是他們在bbb.io/latest-images在線頁面上從 2020 年更新的映像中的 4.19.x 內核

...

和這個...

def WriteByte(Reg, Value):
    data = [0 for i in range(2)]
    data[0] = Reg
    data[1] = Value
    MotorBridge.writeList(WriteMode,data)

def WriteHalfWord(Reg,Value):
    data = [0 for i in range(3)]
    data[0] = Reg
    data[1] = Value & 0xff
    data[2] = (Value>>8) & 0xff
    MotorBridge.writeList(WriteMode,data)

def WriteOneWord(Reg,Value):
    data = [0 for i in range(5)]
    data[0] = Reg
    data[1] = Value & 0xff
    data[2] = (Value>>8) & 0xff
    data[3] = (Value>>16) & 0xff
    data[4] = (Value>>24) & 0xff
    MotorBridge.writeList(WriteMode,data)

def SetDefault():
    WriteOneWord(CONFIG_VALID,0x00000000)

class MotorBridgeCape:
    def __init__(self):
        GPIO.output(Reset, GPIO.HIGH)
        time.sleep(1)

我們將更改此源以處理特定的庫。在編寫此庫時選擇。我們將使用 smbus2 代替他們使用的任何東西,并使用純 python 代替 Adafruit_BBIO b/c,因為它已被棄用。

def WriteByte(Reg,Value):
    data = [0 for i in range(2)]
    data[0] = Reg
    data[1] = Value
    bus.write_i2c_block_data(0x4b, 1, data)

def WriteHalfWord(Reg,Value):
    data = [0 for i in range(3)]
    data[0] = Reg
    data[1] = Value & 0xff
    data[2] = (Value>>8) & 0xff
    bus.write_i2c_block_data(0x4b, 1, data)

def WriteOneWord(Reg,Value):
    data = [0 for i in range(5)]
    data[0] = Reg
    data[1] = Value & 0xff
    data[2] = (Value>>8) & 0xff
    data[3] = (Value>>16) & 0xff
    data[4] = (Value>>24) & 0xff
    bus.write_i2c_block_data(0x4b, 1, data)

def SetDefault():
    WriteOneWord(CONFIG_VALID, 0x00000000)

class MotorBridgeCape:
    def __init__(self):
        reset_pin.write_text('high')
        time.sleep(1)

所以,要完成這項工作。我們需要執行一些特定的任務:

1. 更改 smbus2 庫。在第 304 行處理 i2c-2 而不是任意 i2c 地址和數字。

2. https://github.com/kplindegaard/smbus2/blob/master/smbus2/smbus2.py#L304是您可以找到第 304 行的地方。

filepath="/dev/i2c-2".format(bus)

pip3 install 或 python3 -m pip install 中的第 304 行位于/.local/lib/python3.7/site-packages/

至少在我的板上,這是我在安裝 w/ 后列出 smbus2 的地方

pip3 install smbus2

or...

python3 -m pip install smbus2

3. 現在,使用壓接器。確保快速斷開在通過拉動和抓取施加高壓力時不會完全脫落。

4. 使用螺絲刀。用一字螺絲刀松開電機橋蓋上連接器上的螺釘。一次滑入一根電線。實際上,讓我們快速嘗試幾個測試,以確保我們的電線正確對齊......

5. 使用 DMM(數字萬用表)或 MM(萬用表)進入連續性設置并進行測試。轉到步進器上的一根線,四根線中的一根,然后從 DMM 連接您的 Common GND。現在,嘗試另一根帶電壓的電線。

當電線在同一個支架中時,這里應該會發出 DMM/MM 的蜂鳴聲。

如果搜索基礎知識和良好的一般信息,這是另一種選擇。關于步進電機:https ://en.wikipedia.org/wiki/Stepper_motor

6. 一旦我們正確配置了我們的電機并測試了哪些電線與其他電線一起使用,那么我們可以將它們一一放置在 Cape 到 BBGG 的連接器中。擰緊,使運行軟件時電線不會松動。沒有人需要 12v 電擊或電弧。

7. Cape 上有一個工作-待機開關。在不使用軟件時,最好處于待機模式。然后,準備就緒后,撥動開關并運行源。

8. git 克隆https://github.com/silver2row/MotorBridgeCapeforBBG_BBB

通過這種方式,我們可以更改上面提到的MotorBridge.py文件中的所有源。

9. 準備從未感覺如此美好!

10. 現在,來源:

#!/usr/bin/python3

import MotorBridge
from time import sleep

motor = MotorBridge.MotorBridgeCape()
motor.StepperMotorAInit()

class board:
    def StepperMotorATest():
        core = int(input("Please provide a numerical value between 0 and 100\n "))
        if core >= 85:
            motor.StepperMotorAMove(2500, 1000)
            sleep(5)
            motor.StepperMotorAMove(-2500, 1000)
            sleep(2)
            print("Making 2500 steps in one direction and back again at 100% duty! ")
        elif core <= 84:
            motor.StepperMotorAMove(1000, 1000)
            sleep(5)
            motor.StepperMotorAMove(-1000, 1000)
            sleep(2)
            print("Making 1000 steps and back again at 100% duty! ")
        else:
            motor.StepperMotorAMove(500, 800)
            sleep(5)
            motor.StepperMotorAMove(-500, 800)
            sleep(2)
            print("Making 500 encoder counts and back again at 80% duty! ")

print("Starting the Script, try to press Control-C to quit!\n")

try:
    while True:
        board.StepperMotorATest()
        sleep(5)

except KeyboardInterrupt:
    print("You may have just pressed Control-C!\n")

很多這種來源是出于審美原因,并且是為了熟悉 BBGG 和 Motor Bridge Cape。我最近沒有看到 MBCape 出售。也許在 Ebay 或其他東西上,一個人可以獲得一個。誰知道?

賽斯

PS 但是...有一個類、函數、if-elif-else 語句和一個 while 循環,用于測試我們作為數字瞬間輸入的內容。

如果我忘記了什么,請發表評論或分享你學到的東西。

?

?
?
?
pYYBAGNgg16AUYD5ABAHHTsnGnI824.jpg
?
1 / 4
?

...

?


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數據手冊
  2. 1.06 MB  |  532次下載  |  免費
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費
  9. 5元宇宙深度解析—未來的未來-風口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費
  11. 6迪文DGUS開發指南
  12. 31.67 MB  |  194次下載  |  免費
  13. 7元宇宙底層硬件系列報告
  14. 13.42 MB  |  182次下載  |  免費
  15. 8FP5207XR-G1中文應用手冊
  16. 1.09 MB  |  178次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關電源設計實例指南
  8. 未知  |  21549次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數字電路基礎pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅動電路設計》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉中文版)
  4. 78.1 MB  |  537798次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191187次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費
缅甸百家乐官网博彩| 真人百家乐官网新开户送彩金| 百家乐官网赌博在线娱乐| 百家乐官网如何打轮盘| 百家乐赢的秘籍在哪| 百家乐过滤| 百家乐888| 百家乐官网公式论坛| 百家乐扑克桌布| 顶级赌场官方下载| 网上百家乐官网新利| 豪门百家乐官网的玩法技巧和规则| 百家乐吹| bet365 备用| 百家乐官网学院| 澳门百家乐网站bt| 六合彩报码| 百家乐官网大赌城| 百家乐破解赌戏玩| 轮盘赌技巧| 罗马百家乐官网的玩法技巧和规则| 韩国百家乐的玩法技巧和规则| 鼎龙国际娱乐城| 百家乐官网园天将| 大发888娱乐城下载平台| 滁州市| e世博百家乐技巧| 大连娱网棋牌大厅| 鼎龙百家乐官网的玩法技巧和规则| 百家乐双龙出| 百家乐官网游戏分析| 百家乐下注瀛钱法| 新浪棋牌竞技风暴| 南宁百家乐官网赌| 百家乐计划工具| 百家乐官网投注软件有用吗| 百家乐如何买大小| 百家乐官网现金平台排名| 百家乐象棋赌博| 原平市| 澳门百家乐信誉|