那曲檬骨新材料有限公司

電子發燒友App

硬聲App

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

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

3天內不再提示
電子發燒友網>電子資料下載>電子資料>使用Swift語言控制伺服

使用Swift語言控制伺服

2022-11-04 | zip | 0.12 MB | 次下載 | 免費

資料介紹

描述

在這個任務中,您將使用另一種電機伺服電機其臂的角度可以隨電位器的變化而變化

第 1 步:您需要什么

poYBAGNkXT-ATDYCAACiOnvFEWc360.png
?

您需要的零件都包含在Maker 套件中。

  • SwiftIO 板
  • 伺服
  • 電位器模塊
  • 4 針電纜

第2步:伺服電機

pYYBAGNkXUKAayPsAAEg18jGpbM749.png
?

伺服電機可以根據信號調整其手臂的位置。您可以設置 PWM 輸出來控制它。該伺服系統每 20 毫秒需要一個脈沖。每個脈沖的持續時間決定了手臂的位置:

  • 如果高壓持續0.5ms,則手臂將處于0度。
  • 如果高壓持續2.5ms,則手臂將處于180度。
  • 如果高壓持續 1.5ms,則手臂將處于 90 度。

注意:本舵機需要脈沖在 0.5 到 2.5ms 范圍內。您可能還會遇到其他需要 1 到 2ms 脈沖的舵機。

第 3 步:電路

poYBAGNkXUWAVgJsAAD9M7Ayyqc765.png
?

將屏蔽罩放在 SwiftIO 板的頂部。

使用 4 針電纜將電位計模塊連接到針腳 A0。

將伺服連接到引腳 PWM4A。舵機有三根線:地線是棕色的,電源線是紅色的,信號線是橙色的。

第 4 步:代碼

/* Import the SwiftIO library to use everything in it. */
import SwiftIO

/* Import the board library to use the Id of the specific board. */
import SwiftIOBoard

/* Initialize the analog pin. */
let a0 = AnalogIn(Id.A0) 

let servo = PWMOut(Id.PWM4A)

while true {
    /* Read the analog value and return a value between 0.0 and 1.0. */
    let value = a0.readPercent() 

    /* Calculate the value to get the pulse duration. 
    Each cycle of the signal lasts for 20 milliseconds.
    The pulse should last between 0.5 and 2.5 ms to activate the servo. 
    With a 0.5ms pulse, the servo will turn to 0 degrees and with a 2.5ms pulse, it will at 180 degrees. 
    In between, it is at an angle between 0–180. */
    let pulse = Int(500 + 2000 * value) 

    /* Set the servo position according to the scaled value. */
    servo.set(period: 20000, pulse: pulse) 
    sleep(ms: 20)
}

第 5 步:代碼分析

import SwiftIO
import SwiftIOBoard

導入兩個庫:?SwiftIO?SwiftIOBoard。

let a0 = AnalogIn(Id.A0)
let servo = PWMOut(Id.PWM4A)

初始化電位器的模擬引腳 A0 和電機的 PWM 引腳 PWM4A。

let value = a0.readPercent() 
let pulse = Int(500 + 2000 * value)
servo.set(period: 20000, pulse: pulse)
sleep(ms: 20)

在死循環中,以百分比形式讀取輸入值,因此您會得到一個介于 0 和 1 之間的值。

您將使用此方法set(period:pulse:)設置 PWM。周期以微秒為單位,因此為 20000us。脈沖應該是 0.5ms 到 2.5ms 之間的數字。所以通過做一些計算,這個值會被匹配到這個范圍內。

第 6 步:運行項目

當您轉動電位器時,伺服臂將移動到不同的角度。


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

評論

查看更多

下載排行

本周

  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次下載  |  免費
二爷百家乐的玩法技巧和规则| 谈谈百家乐赢钱技巧| 博讯网| 百家乐套利| 做生意风水方向怎么看| 百家乐官网数据程序| 威尼斯人娱乐城官方网| 风水24山那个排第一| 百家乐官网注册赠金| 大发888什么赢钱快| 网上百家乐正规代理| 百家乐官网网站可信吗| 金道博彩| 大发888娱乐城登录| 真人百家乐蓝盾| 百家乐官网游戏免费试| 太阳城百家乐官网杀祖玛| 时时彩论坛| 百家乐发牌盒子| 澳门百家乐官网官方网站| k7百家乐官网最小投注| 利高国际网上娱乐| 大发888苹果手机下载| 华硕百家乐的玩法技巧和规则| 网上百家乐如何打水| 澳门百家乐官网赌场文| 百家乐官网打水论坛| 网上百家乐官网的赌博网站| 镇宁| 大发888官方网站下载| 威尼斯人娱乐城真钱百家乐| 聚宝盆百家乐的玩法技巧和规则| 圣淘沙百家乐官网的玩法技巧和规则| 武汉百家乐官网赌具| 百家乐官网书包| 百家乐官网关键词| 95博彩通| 宜宾市| 圣淘沙娱乐| 百家乐官网如何玩法| 百家乐官网策略与心得|