Skip to main content

Grove - スライドポテンショメータ

note

この文書は AI によって翻訳されています。内容に不正確な点や改善すべき点がございましたら、文書下部のコメント欄または以下の Issue ページにてご報告ください。
https://github.com/Seeed-Studio/wiki-documents/issues

pir

Grove - スライドポテンショメータモジュールは、最大抵抗値が10KΩの線形可変抵抗を組み込んでいます。スライダーを片側からもう片側に移動すると、出力電圧は0Vから適用したVccまで変化します。このモジュールは標準の4ピンGroveケーブルを介して他のGroveモジュールに接続されます。ピンのうち3つはOUT(ピン1)、Vcc(ピン3)、GND(ピン4)に接続され、4番目のピン(ピン2)はオンボードの緑色インジケータLEDに接続されています。このLEDは、ポテンショメータの抵抗変化を視覚的に表すために使用されます。

pir

特徴

  • 30mmのスライド長
  • 線形抵抗テーパー
  • Grove互換
tip
Groveモジュールの詳細については、[Grove System](https://wiki.seeedstudio.com/ja/Grove_System/)をご参照ください。

応用アイデア

以下は参考用のプロジェクトです。

Arduino BoomBoxArduino BeatBox

pir

pir

今すぐ作る!今すぐ作る!

仕様

項目最小値標準値最大値
電圧 (DC)3.3V5.0V30V
電流--30mA
寸法24mm x 60mm
重量8.6g
回転寿命>15,000 サイクル
総抵抗値10KΩ
ストローク長30mm
総抵抗値許容差+/- 20%

対応プラットフォーム

ArduinoRaspberry Pi

pir

pir

caution
上記で対応可能とされているプラットフォームは、モジュールのソフトウェアまたは理論的な互換性を示しています。ほとんどの場合、Arduinoプラットフォーム向けのソフトウェアライブラリやコード例のみを提供しています。すべての可能なMCUプラットフォーム向けにソフトウェアライブラリやデモコードを提供することは不可能です。そのため、ユーザーは独自のソフトウェアライブラリを作成する必要があります。

はじめに

可変抵抗として使用する場合

以下に示すように、Grove - スライドポテンショメータは、MCU制御またはスタンドアロンプロジェクトで単純なスライドポテンショメータとして使用できます。

pir

スタンドアロン

以下の手順に従って、このモジュールを使用してサンプルGrove回路を構築します。ただし、マイクロコントローラボードは使用しません。

  1. スライドポテンショメーターモジュールを回路の入力側(電源モジュールの左側)に接続します。回路の出力側では、以下のようなユーザーインターフェースモジュールを使用できます(Grove - 赤色LED、Grove - LEDストリングライト、Grove - ミニファン、Grove - ブザー、Grove - レコーダーなど)。

  2. 回路が完成したら電源を入れます。

  3. スライドポテンショメーターモジュールを使用して出力をトリガーできます。例えば:

    • Grove - 赤色LED出力モジュールと組み合わせて使用すると、スライダーをGNDからVccに移動させるにつれてLEDの明るさが増加することを確認できます。Vccではポテンショメーターの抵抗が最小となり、LEDが最も明るく点灯します。同様の動作は、スライドポテンショメーターをGrove - LEDストリングライトモジュールと使用した場合にも見られます。スライダーをVccマークに近づけることで、より多くの電圧が適用され、LEDライトがより明るくなります。
    • 同様に、スライドポテンショメーターを使用してGrove - ミニファンの速度やGrove - ブザーモジュールの音の周波数を変化させることができます。
    • スライドポテンショメーターは、任意の回路のON/OFFスイッチとしても使用できます。スライダーをVcc位置に移動すると回路がONになり、GNDに移動すると回路がOFFになります。

電源モジュールを選択する際には、Grove - USB電源モジュールまたはGrove - DCジャック電源モジュールのいずれかを使用して、独立したGrove回路を構築できます。

電圧分割器として

スライドポテンショメーターモジュールを電圧分割器として機能させるために、以下の簡単な手順に従ってください:

  1. モジュールをArduinoまたはSeeeduinoと組み合わせて使用する場合、Grove - ベースシールドを使用し、指定されたGroveインターフェース(例:アナログポート0)を使用してGrove - スライドポテンショメーターモジュールをシールドに接続します。

pir

  1. USBケーブルを使用してボードをPCに接続します。

  2. 以下のサンプルスケッチをアップロードします。

int adcPin = A0; // ポテンショメーターの入力ピンを選択
int ledPin = A1; // LEDのピンを選択
int adcIn = 0; // センサーからの値を格納する変数
void setup()
{
Serial.begin(9600); // シリアル通信を9600bpsで初期化
pinMode(ledPin, OUTPUT); // ledPinをOUTPUTに設定
Serial.println("スライドポテンショメーターテストコード!!");
}
void loop()
{
// センサーから値を読み取る:
adcIn = analogRead(adcPin);
if(adcIn >= 500) digitalWrite(ledPin,HIGH); // adcInが500以上の場合、LEDを点灯
else digitalWrite(ledPin, LOW);
Serial.println(adcIn);
delay(100);
}
  1. シリアルモニターを開きます。ADCからのデータが表示されるはずです。

pir

  1. レバーを前後に動かします。シリアルデータがそれに応じて変化します。出力抵抗が一定の設定値を超えると、オンボードのインジケーターLEDも点灯します。

HIDデバイスとして

スライドポテンショメーターは効果的なヒューマンインターフェースデバイス(HID)として使用でき、例えばラジオコントローラーのラジオ制御玩具車に使用できます。以下の写真はコントロールパネル上の2つのスライドポテンショメーターを示しています。一つは左車輪の速度を制御し、もう一つは右車輪の速度を制御します。それぞれのモーターの速度を変更し、その動作を確認できます。右車輪を左車輪より速く回転させると車は右に曲がり、左車輪を右車輪より速く回転させると車は左に曲がります。

pir

Codecraftで遊ぶ

ハードウェア

ステップ1. Grove - スライドポテンショメーターをベースシールドのポートA0に接続します。

ステップ2. ベースシールドをSeeeduino/Arduinoに接続します。

ステップ3. USBケーブルを介してSeeeduino/ArduinoをPCに接続します。

ソフトウェア

ステップ1. Codecraftを開き、Arduinoサポートを追加し、メインプロシージャを作業エリアにドラッグします。

note
初めてCodecraftを使用する場合は、[Codecraftを使用したArduinoのガイド](https://wiki.seeedstudio.com/ja/Guide_for_Codecraft_using_Arduino/)も参照してください。

ステップ2. 以下の画像のようにブロックをドラッグするか、このページの最後でダウンロード可能なcdcファイルを開きます。

pir

Arduino/Seeeduinoにプログラムをアップロードします。

tip
コードのアップロードが完了すると、スライドポテンショメーターをスライドさせると、センサー値がシリアルモニターに表示されます。また、ポテンショメーターの半分を超えてスライドさせると、LEDが点灯します。

Raspberry Piで遊ぶ(Raspberry Pi用Grove Base Hatを使用)

ハードウェア

  • ステップ1. このプロジェクトで使用するもの:
Raspberry PiGrove Base Hat for RasPiGrove - スライドポテンショメーター

pir

pir

pir

今すぐ購入今すぐ購入今すぐ購入
  • ステップ 2. Grove Base Hat を Raspberry Pi に接続します。
  • ステップ 3. スライドポテンショメータを Base Hat の A0 ポートに接続します。
  • ステップ 4. USBケーブルを使用して Raspberry Pi を PC に接続します。

pir

note

ステップ 3では、スライドポテンショメータを任意のアナログポートに接続することができますが、対応するポート番号に合わせてコマンドを変更する必要があります。

ソフトウェア

note

Raspberry Pi OS >= Bullseye を使用している場合は、Python3 のみでこのコマンドラインを使用する必要があります。

  • ステップ 1. ソフトウェアの設定に従って開発環境を構成します。
  • ステップ 2. grove.py ライブラリをクローンしてソースファイルをダウンロードします。
cd ~
git clone https://github.com/Seeed-Studio/grove.py
  • ステップ 3. 以下のコマンドを実行してコードを実行します。
cd grove.py/grove
python3 grove_slide_potentiometer.py 0

以下は grove_slide_potentiometer.py のコードです。

import math
import sys
import time
from grove.adc import ADC


class GroveSlidePotentiometer(ADC):
def __init__(self, channel):
self.channel = channel
self.adc = ADC()

@property
def value(self):
return self.adc.read(self.channel)


Grove = GroveSlidePotentiometer


def main():
if len(sys.argv) < 2:
print('Usage: {} adc_channel'.format(sys.argv[0]))
sys.exit(1)

sensor = GroveSlidePotentiometer(int(sys.argv[1]))

while True:
print('Slide potentiometer value: {}'.format(sensor.value))
time.sleep(.2)


if __name__ == '__main__':
main()
tip

すべてが正常に動作すれば、以下の結果が表示されます。

pi@raspberrypi:~/grove.py/grove $ python3 grove_slide_potentiometer.py 0
Slide potentiometer value: 987
Slide potentiometer value: 988
Slide potentiometer value: 986
Slide potentiometer value: 8
Slide potentiometer value: 2
Slide potentiometer value: 0
Slide potentiometer value: 1
Slide potentiometer value: 0
Slide potentiometer value: 24
Slide potentiometer value: 0
Slide potentiometer value: 0
Slide potentiometer value: 11
Slide potentiometer value: 995
Slide potentiometer value: 999
Slide potentiometer value: 999
^CTraceback (most recent call last):
File "grove_slide_potentiometer.py", line 66, in <module>
main()
File "grove_slide_potentiometer.py", line 62, in main
time.sleep(.2)
KeyboardInterrupt

++ctrl+c++ を押すことで、このプログラムを終了することができます。

:::notice アナログポートの場合、シルクスクリーンのピン番号は A0, A1 のようになっていますが、コマンドでは 01 を使用します。これはデジタルポートと同じです。そのため、モジュールを正しいポートに接続するようにしてください。そうしないとピンの競合が発生する可能性があります。 :::

Raspberry Pi で遊ぶ (GrovePi_Plus を使用)

note

Raspberry Pi OS >= Bullseye を使用している場合は、Python3 のみでこのコマンドラインを使用する必要があります。

  1. Raspberry Pi と GrovePi または GrovePi+ を準備します。
  1. 接続
  • Groveケーブルを使用してセンサーを GrovePi の A0 ソケットに接続します。
  1. デモディレクトリに移動します。
cd yourpath/GrovePi/Software/Python/
  • コードを確認します。
nano grove_slide_potentiometer.py   # "Ctrl+x" で終了 #
import time
import grovepi

# Grove スライドポテンショメータをアナログポート A0 に接続
# OUT,LED,VCC,GND
slide = 0 # ピン 1 (黄色のワイヤー)

# デバイスにはポート A0 のピン 2 としてアクセス可能なオンボード LED が搭載されています
# OUT,LED,VCC,GND
led = 1 # ピン 2 (白色のワイヤー)

grovepi.pinMode(slide,"INPUT")
grovepi.pinMode(led,"OUTPUT")
time.sleep(1)

while True:
try:
# ポテンショメータからセンサー値を読み取る
sensor_value = grovepi.analogRead(slide)

# オンボード LED を点灯
if sensor_value > 500:
grovepi.digitalWrite(led,1)
else:
grovepi.digitalWrite(led,0)

print "sensor_value =", sensor_value

except IOError:
print "Error"
  1. デモを実行します。
sudo python3 grove_slide_potentiometer.py

回路図オンラインビューア

リソース

プロジェクト

Raspberry Pi 音楽サーバー: Raspberry Pi プロジェクトの第一歩

技術サポート & 製品ディスカッション

私たちの製品をお選びいただきありがとうございます!製品の使用体験がスムーズになるよう、さまざまなサポートを提供しています。異なる好みやニーズに対応するため、いくつかのコミュニケーションチャネルを用意しています。

Loading Comments...