Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Arduinoでモーター制御ロジックを実装した話
Search
k-abe
June 29, 2021
Programming
610
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Arduinoでモーター制御ロジックを実装した話
2021/06/29(火)RustのLT会 Shinjuku.rs #16 @オンラインの資料
k-abe
June 29, 2021
More Decks by k-abe
See All by k-abe
μT-Kernel×AIの学習環境
kabe
0
71
【連続講座3】デザインパターンを学び、ソフトウェア設計に生かそう(Facade・Observer・State)
kabe
0
190
【連続講座2】デザインパターンを学び、ソフトウェア設計に生かそう(Builder・Strategy・Composite)
kabe
0
110
【連続講座1】デザインパターンを学び、ソフトウェア設計に生かそう(Adapter・Factory Method・Singleton)
kabe
0
120
猫の日開催!ねこIoTLT vol.9(Spresense猫モーラー)
kabe
0
130
ソフトウェア設計原則【SOLID】を学ぶ #5 リスコフの置換原則
kabe
0
710
ソフトウェア設計原則【SOLID】を学ぶ #4 開放閉鎖の原則
kabe
0
1k
ソフトウェア設計原則【SOLID】を学ぶ #3 依存性逆転の原則
kabe
0
680
SWEST25_EmbLT_NervesとSpresenseをHostIFで通信してみた
kabe
0
150
Other Decks in Programming
See All in Programming
dotNET_vulnclicker_intro.pdf
deka_morita
0
140
Agents on Rails - Rails at Scale 2026
irinanazarova
0
570
[2026-09-26]空論ジェネリックプロセス~テスト資産とAIで紡ぐ、再現可能なパフォーマンスチューニングの話~
tosite
0
270
AmebaブログはKMPから卒業します
kmars0605
0
200
自サークルのIdPからログアウトできるようになるまで
taiseiue
1
140
Web Framework Benchmark Battle 2026, Any%
a_matsuda
2
2.5k
現場と育てるRailsモデリング 〜Spreadsheetから始めたモデル設計〜
siroemk
2
630
エージェントを使い続けるためのメタワーク / Meta-work for keeping using the agent
rkaga
1
180
Long Living Tokens, Die, Die, Die! (or: The One Ring is Banned in Modern)
sylph01
0
320
Herb in Rails 8.2: Your ERB views, now HTML-aware @ Kaigi on Rails 2026, Tokyo, Japan
marcoroth
2
280
Verilogで学ぶCPU自作入門
uyuki234
8
4.1k
contenteditable と日本語入力に向き合う
colorful12
0
200
Featured
See All Featured
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
850
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
730
How STYLIGHT went responsive
nonsquared
100
6.3k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
8.1k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
260
Statistics for Hackers
jakevdp
799
230k
Paper Plane
katiecoart
PRO
5
54k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
50
10k
Navigating Weather and Climate Data
rabernat
0
560
Game over? The fight for quality and originality in the time of robots
wayneb77
1
310
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
570
How to train your dragon (web standard)
notwaldorf
96
6.9k
Transcript
ArduinoͰϞʔλʔ੍ޚϩδοΫΛ࣮ͨ͠ Ѩ෦ߞೋ/2021.6.29 RustͷLTձ Shinjuku.rs #16 @ΦϯϥΠϯ 1
• ࣗݾհ • ຊͷςʔϚ • Ϟʔλ੍ޚϩδοΫͱ? • ։ൃڥ • ։ൃͷྲྀΕ
• C→RustҠ২࡞ۀͷײ ࣍ 2
• ໊લɿѨ෦ߞೋ(͋ɹ͜͏͡) • ύʔιϧςΫϊϩδʔελοϑגࣜձࣾʹॴଐɻݸਓݟղɻ • ݣͰҩྍػثϝʔΧʹͯबۀதɻࠐΈιϑτΣΞ։ൃɻݴޠɿCݴޠϝΠϯɻ • Rustྺɿ2021ͷ3݄ࠒ͔Βຊࠊ͍Εֶͯश։࢝ɻ • ϒϩάɿhttps://k-abe.hatenablog.com/
• Twitterɿ@juraruming • طץٕज़ॻɿ https://techbookfest.org/product/6581675934875648?productVariantID=5815321967460352 https://techbookfest.org/product/4581772882870272?productVariantID=5309574368198656 ࣗݾհ
• લճͷShinjuku.rs#15ͰॳࢀՃ͍͖ͤͯͨͩ͞·ͨ͠ɻ ɹ ɹRustॳ৺ऀ͕ArduinoΛLνΧͯ͠Έͨ https://speakerdeck.com/grace2riku/rustchu-xin-zhe- gaarduinowoltikasitemita-bb5de094-8ee0-48a6-af6e-a8ce7d430309 ࣗݾհ-2
• CίʔυͷϞʔλ੍ޚϩδοΫΛRustʹҠ২ͯ͠Έ·ͨ͠ɻ ɹࠐΈܥͷʹಛԽ͍ͯ͠·͢ɻ ɹҠ২ͷ࡞ۀ༰ɺײͳͲΛڞ༗͍͚ͤͯͨͩ͞Εͱࢥ͍·͢ɻ Ҡ২ݩιʔείʔυɿhttps://github.com/grace2riku/EVKartArduinoIDE Ҡ২ޙιʔείʔυɿhttps://github.com/grace2riku/avr-hal/tree/add_evkart ຊͷςʔϚ
• ੍ޚରιϑτΣΞ੍ޚ͕ඞཁͳϒϥγϨεϞʔλɻ ɹిݯON͢ΕϞʔλճస͢Δϛχ࢛ۦͷDCϞʔλͱҟͳΔɻ Ϟʔλ੍ޚϩδοΫͱ?
None
੍ޚʹඞཁͳϚΠίϯपลػೳ࣍ͷ௨Γɻ • λΠϚɿ੍ޚλΠϛϯάੜͷͨΊʹඞཁ(ࠓճ10ms) • ֎෦ׂΓࠐΈɿϞʔλҐஔݕग़ͷͨΊ(্ཱ͕ͪΓɺཱͪԼ͕Γͷ྆Τοδݕग़) • ADมɿϞʔλճస੍ޚ͠ΛมߋՄೳʹ͢ΔͨΊ • PWMɿϞʔλۦಈͷͨΊ •
ग़ྗϙʔτɿϞʔλۦಈͷͨΊ Ϟʔλ੍ޚϩδοΫͱ?
Ϟʔλ੍ޚج൘Λյͯ͠͠·ͬͨͨΊ ӈͷ࣮ݧճ࿏Ͱ֬ೝɻ ։ൃڥ ᶃArduino-mega2560 ᶄϗʔϧηϯαସDIP SWɿࠨ͔ΒWɾVɾUɻ ᶅFET High ସLEDɿӈ͔ΒUɾVɾW ᶆFET
Low ସLEDɿӈ͔ΒUɾVɾW ᶇεϩοτϧ (Մม߅) ᶃ ᶄ ᶅ ᶆ ᶇ
༻ͨ͠ιϑτΣΞ • avr-hal https://github.com/Rahix/avr-hal • boards/arduino-mega2560/example ҎԼͷαϯϓϧίʔυΛࢀর࣮͠ ͍ͯ͘͠ɻ ։ൃڥ
• ։ൃڥߏங ɹavr-halͷQuickstartهࡌ௨ΓͷखॱͰڥ͕Ͱ͖Δɻ ɹhttps://github.com/Rahix/avr-hal • ࣮ ɹ- avr-halͷαϯϓϧϓϩάϥϜΛࢀߟʹίʔσΟϯάɻ ɹ- ֎෦ׂΓࠐΈͷΤοδઃఆϚΠίϯͷσʔλγʔτΛࢀরͨ͠ɻ
։ൃͷྲྀΕ
ɹ- ֎෦ׂΓࠐΈͷΤοδઃఆϚΠίϯͷσʔλγʔτΛࢀরͨ͠ɻ
ɾ࣮͕ྃͨ͠ظಈ࡞֬ೝग़དྷͣɻσόοάதɾɾɾɻ ɾC→RustҠ২࡞ۀͷ࣮ྃͨ͠ɻײΛڞ༗͍ͤͯͩ͘͞͞ɻ C→RustҠ২࡞ۀͷײ
ɾRustɾɾɾCΑΓϞμϯʹॻ͚Δͱ͍͏࣮ײΛಘͨɻ ɹॻָ͍͍͍ͯͯ͠ɻ ɹ- ܕਪ͕خ͍͠ɻ ɹ- ϔομϑΝΠϧΛॻ͔ͳͯ͘ྑ͍ͷ͕خ͍͠ɻ ɹɹpubΩʔϫʔυͰؔͷՄࢹੑΛઃఆͰ͖Δͷָɻ ɹɹmodΩʔϫʔυͰϞδϡʔϧΛಡΈࠐΊָͯɻ ɹ- มએݴͰσϑΥϧτ͕Πϛϡʔλϒϧ(ॻ͖͑ෆՄ)ͳͷ͕͖ɻ
C→RustҠ২࡞ۀͷײ
ɾavr-halͷτϨΠτͷߏ(֊ߏ)͕ྑ͘Θ͔Βͳ͔͚ͬͨͲ ɹrust-analyzerͷ͓͔͛ͰͳΜͱ͔ཧղͰ͖ͨɻ ɹΓ͍ͨใʹૉૣ͘ΞΫηεͰ͖Δɻɹ C→RustҠ২࡞ۀͷײ
ɾάϩʔόϧؔͷ͍ํ ɹstatic mut xxx = xx; ɹϕετϓϥΫςΟεΛௐΔɻ ݸਓతͳ՝
ɾunwrap͕ྑ͘Θ͔Βͳ͍ɻ ɹࣗͷதͰ·͓ͩ·͡ͳ͍ͷೝࣝɻ ɹ ݸਓతͳ՝
ٕज़ॻయ11ͰຊΛग़͢ͷͰΑ͚ΕνΣοΫ͍ͯͩ͘͠͞ɻ αʔΫϧ໊ʲk-abeʳͰ͢ɻ • ٕज़ॻయ11 https://techbookfest.org/event/tbf11/market એ
͝ਗ਼ௌɺ͋Γ͕ͱ͏ ͍͟͝·ͨ͠ɻ ऴΘΓ