MENU
  • ホーム
  • 生成AI
  • Drone
  • Minecraft
  • RaspberryPi
  • 随想
面白いこと発掘だ
northarantの研究室
  • ホーム
  • 生成AI
  • Drone
  • Minecraft
  • RaspberryPi
  • 随想
northarantの研究室
  • ホーム
  • 生成AI
  • Drone
  • Minecraft
  • RaspberryPi
  • 随想
  1. ホーム
  2. Python
  3. PWM制御を用いたLEDの輝度調整

PWM制御を用いたLEDの輝度調整

2024 11/06
Python RaspberryPi
2023年2月27日2024年11月6日

FPV-TANKの車体が概ね完成したので、pwm制御でLEDを調光してみました。

ラズパイ本体と、pca9685、USBのゲームコントローラーがあれば、このプログラムでLEDをコントローラーで光らせられますよ!

pca9685をまだインストールしていない方は、以下のリンクを見てみて下さい。

I2C通信
pwmでサーボを動かす

インストールが済んでいれば、このプラグラムでLEDの調光ができます。

import pygame
import Adafruit_PCA9685
# pygame初期設定
pygame.init()
joy = pygame.joystick.Joystick(0) # joystickのインスタンスを作成
joy.init() # joyの初期化
# PCA9685初期設定
pwm = Adafruit_PCA9685.PCA9685() # PCA9685のインスタンスを作成
pwm.set_pwm_freq(60) # PWMの周波数を60Hzに設定
Led = 0 #初期輝度(pwm値なので、0~4095)
while True:
    
    if pygame.event.get():        
        Led = int((joy.get_axis(2) + 1)*2048) # 私のゲームコントローラーは、axis(2)がLTでした。
        print('pwm",Led)
        
    pwm.set_pwm(5, 0, Led) # 5chがヘッドライトのチャンネルになっています。

実行するとこんな感じです。

送っているpwm値とLEDの明るさが連動しているのが分かるでしょうか?

ラズパイ本体だけでもpwm制御は出来るのですが、pwm制御できるピンが1つしかなく、pwm信号をシュミレートするプログラム(ソフトウェアpwm)を使って、それ以上のpwmも出力できるのですが、私は専門職の子会社に任せてしまいました。

ただ、FPV-TANK としては、ヘッドライトは点灯と消灯の2パターンだけあれば良いので、アナログ軸は使わずに、ボタンで ON,OFF しています。

以上ヘッドライトで遊んでみた記事でした。

Python RaspberryPi
LED PCA9685 ゲームコントローラー
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
  • Picamera2を使った写真の撮影
  • INA219を使った電圧と電流の監視

この記事を書いた人

northarantのアバター northarant

1968年生まれ。職業は高校数学の教員。自分では変わり者だと思っています。常により良い未来を目指して、時に楽しく、時に苦しみながら、人生を歩いています。

関連記事

  • INA219を使った電圧と電流の監視
    2023年3月4日
  • Picamera2を使った写真の撮影
    2023年2月26日
  • OSのクリーンインストール
    2023年2月19日
  • 自動ブレーキの搭載
    2023年2月18日
  • HC-SR04を用いた距離の測定
    2023年2月17日
  • 移動するだけのTANK
    2023年2月12日
  • モータードラーバーL9110S
    2023年2月9日
  • PCA9685を使ったLEDの点灯
    2023年2月8日

コメント

コメントする コメントをキャンセル

カテゴリー

  • Drone
  • Minecraft
  • music
  • Python
  • RaspberryPi
  • Twenty Twenty-Tree
  • これすごい
  • 生成AI
  • 随想

アーカイブ

  • 2025年6月
  • 2025年5月
  • 2024年12月
  • 2024年11月
  • 2024年9月
  • 2024年7月
  • 2024年6月
  • 2024年5月
  • 2024年4月
  • 2024年3月
  • 2024年2月
  • 2024年1月
  • 2023年11月
  • 2023年10月
  • 2023年9月
  • 2023年8月
  • 2023年3月
  • 2023年2月
  • 2023年1月

© northarantの研究室.

目次