概要
ラズパイでプログラムを組んでいて、ラジコンを作りました。
キーボードではラジコンを動かせたので、ゲームのコントローラーでできないか、
今回やってみました。まずは、プログラムが動くかも確認したかったため、有線でやってみました。
接続確認
ターミナルを開いて、
ls /dev/input/
と打ってください。
そうしたら、
「by-id by-path event0 event1 js0 mice」
とでると思います。
「js0」が認識した最初のジョイスティックを指しています。
evedvとpygameのライブラリをインストールする
次に各ライブラリをインストールします。
ターミナルに
pip3 install evdev
と
pip3 install pygame
と打って、インストールしてください。
コード
以下がコードの例です。コントローラーの動作確認のプログラムでラジコンを動かすコードは載せてませんので、ご注意ください。
import pygame
from time import sleep
# pygameの初期化
pygame.init()
# コントローラーの初期化
joystick_count = pygame.joystick.get_count()
if joystick_count == 0:
# ジョイスティックが見つからない場合は終了
print("No joystick detected")
pygame.quit()
exit()
joystick = pygame.joystick.Joystick(0)
joystick.init()
def process_input():
running = True
pan_angle = 0
tilt_angle = 0
while running:
for event in pygame.event.get():
if event.type == pygame.JOYBUTTONDOWN:
print(f"JOYBUTTONDOWN: Button {event.button}")
# 以降、ボタン押下時の動作を実装
elif event.type == pygame.JOYBUTTONUP:
print(f"JOYBUTTONUP: Button {event.button} released")
# ボタン解放時の動作を実装
elif event.type == pygame.JOYHATMOTION:
print(f"JOYHATMOTION: Hat {event.hat}, Value {event.value}")
# 十字キー操作時の動作を実装
elif event.type == pygame.QUIT:
running = False
sleep(0.1)
if __name__ == "__main__":
try:
process_input()
finally:
pygame.quit()
失敗談
ラジコンのバッテリーが途中で切れたので、ラジコンのバッテリーを充電している間、
モバイルバッテリーでラズパイに直接、モバイルバッテリーを繋げて、動作確認をしていました。
その時、プログラムがうまく動かなったので、動作確認をする際は気を付けてください。
まとめ
という感じです。
何かの参考になれば幸いです。
副業から独立まで「稼げる」Webスキルを習得する(PR)
ここまで読んでいただきありがとうございます。 最後に宣伝をさせてください。
「副業を始めたいが、何から手をつければいいかわからない」「独学でスキルはついたが、収益化できていない」という悩みを持つ方には、マンツーマン指導のWebスクール**「メイカラ」**が適しています。
このスクールは、単に技術を教えるだけでなく、**「副業として具体的にどう稼ぐか」**という実務直結のノウハウ提供に特化している点が特徴です。
講師陣は、実際に「副業Webライターから1年で独立して月収100万円」を達成したプロや、現役で利益を出し続けているブロガーなど、確かな実績を持つプレイヤーのみで構成されています。そのため、机上の空論ではない、現場で通用する戦術を学ぶことができます。
副業に特化した強み
- 最短ルートの提示: 未経験からでも実績を出せるよう、マンツーマンで指導。
- AI活用の習得: 副業の時間対効果を最大化するための、正しいAI活用スキルも網羅。
- 案件獲得のチャンス: 運営がWebマーケティング会社であるため、実力次第で社内案件の紹介など、仕事に直結する可能性があります。
受講者の多くは、「在宅でできる仕事を探している」「副業を頑張りたい」という20代・30代・40代が中心です。
受講前には、講師による無料説明が行われます。無理な勧誘はなく、自分に合った副業スタイルやプランを相談できるため、まずは話を聞いてみることから始めてみてはいかがでしょうか。
