Quantcast
Channel: C#タグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 9691

RaspberryPi PythonとC#でLチカ

$
0
0

PythonでLチカ

知識ゼロから作って学ぶIoT入門
Arduinoではありますがブレッドボードの説明やLチカ説明が載っており、1500円セールの時なら元はとれます。

gpioのピンの一覧を表示する

基板のGPIOの番号を確認します。

$ gpio readall
wiringpiライブラリー古い場合はエラーが出た場合

ライブラリーが古い場合はエラーが出ます

Oops - unable to determine board type... model: 17

wiringpiを更新する

cd /tmp
$ wget https://project-downloads.drogon.net/wiringpi-latest.deb
$ sudo dpkg -i wiringpi-latest.deb

再度
gpio readall

gpioのPIN番号の表示

Physical = 連番 PIN
0v = GND
ターミナルに表示されます
スクリーンショット 2020-05-28 15.57.12.png

左側に3.3Vの電流がそれぞれのPINに流れています
右側に5Vの電流がそれぞれのPINに流れています

0vがGNDになります。GNDはマイナス
GNDについてはUmedyの動画で詳しく説明しています。
GPIについてUmedyの動画で体系的に学ぶことをお勧めします。

GPIO.BOARD: 物理ピン番号(連番)
GPIO.BCM: 役割ピン番号(broadcomが命名しているもの)

GPIO番号はモデルごと違うのでPIN連番(BOARD)を使う

GPIO番号はモデルごと違う場合があるので、PIN番号で指定するGPIO.BOARD(連番)を使った方がよいみたいです。

スクリーンショット 2020-05-28 15.57.12.png

l.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
importRPi.GPIOasGPIO#RPi.GPIOモジュールをインポート 
fromtimeimportsleep#GPIO.setmode(GPIO.BCM)
#GPIO.setmode(GPIO.BOARD)
#連番を利用する
GPIO.setmode(GPIO.BOARD)GPIO.setup(7,GPIO.OUT)try:whileTrue:GPIO.output(7,GPIO.HIGH)sleep(0.5)GPIO.output(7,GPIO.LOW)sleep(0.5)exceptKeyboardInterrupt:# GPIO設定クリア 
GPIO.cleanup()
$ python l.pay

スクリーンショット 2020-05-29 17.26.23.png

全体の流れ

PINのプラス(赤)からブレッドボードを通してPIN マイナス(黒)(GND)につなげる
ダイオードに電流が流れすぎないように抵抗を加えて調整する必要がある

スクリーンショット 2020-05-28 15.57.12.png
パーツをまとめて購入(サンプルファイルCD付き)
スクリーンショット 2020-05-29 18.02.23.png
最終的にこれらをC#に変換しマイクロソフトのGPIOライブラリを使って使おうと思います。

ポイント

センサーパーツをAmazonでまとめて購入できる
体系的にGPIOを学んだほうがよい。UmedyにRaspberyの動画があった
Amazonの安いテスターを買って電流がちゃんと流れているか確認すると理解が早まる
パーツをまとめて購入セットにはサンプルプロジェクトファイルがあり、自走学習が可能と思われる

次回 C#でLチカ

マイクロソフトがGPIOライブラリをリリースしてきたのでそれを使ってlチカをやってみます。

マイクロソフトのGPIOライブラリ
MONOのGPIOライブラリ


Viewing all articles
Browse latest Browse all 9691

Trending Articles