/// BANGBOO BLOG ///

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31

November 18, 2019

Raspberry Pi

唇を軽縺?閉じ、ブーと息を下唇に藹??てると、唇が共振を起こす
教育用と謳ってる理由が分かった、細かな所に手間が觸??かる、良いセンサ繝?/デバイスは饅??価、結線は臀??確かで面倒(パーツが壊れている場合も)、スマホ+周辺機器で臀??る方が楽に臀??れそう

■Raspberry Pi財団公藹??サイト
https://www.raspberrypi.org/

■ラズパイ入手
http://akizukidenshi.com/catalog/c/craspi/
https://www.switch-science.com/

Raspberry Pi 3B+(ネッがト実用になっている)元々$35だが日本で縺?6000円弱臀??でしか買えない
Raspberry Pi Zero WH(ピンヘッダー有、有線LAN無・??
Raspberry Pi 4B(3B+がもう手に入らない、1G/2G/4Gメモリの種類有り)

3B+縺?3Bとの違いはネットワーク系が早い/PoE
3B+で縺?2.5A以臀??が必須、4B縺?3A以臀??、通常スマホの充電器縺?1A/タブレット縺?2Aのモ繝?がほとん縺?
ファン欲しい CPU60℃位にはなる様、ヒートシンク縺?-2℃位の藹??荳?
4Bのメモリ縺?1Gでも十分だがモニタを使うとメモリ喰う、VNCだが。2000円位高いが1台目縺?4Gだと潰しが利縺?
 miniHDMI、USB-C電觸??に藹??繧?った

ACアダプ繧? 3A 1000円
microSD(相性あり、8-32GB、Class10、Panaのフォーマッタ縺?FAT32) transcend32G 800円
ヒートシンク銅製 PCCOOLER RHS-03-BRK 13x13を2個縺?250円
ケース・??4縺?3B+の臀??觸??はない)、ファ繝?

キットで買うと藹??い
 GPIOケーブル、T型GPIO拡張ボード
 ブレッドボード
 ジャンパーワイヤ繝?
 ワニ口クリップ
 モジュールセンサ繝?
 ブザー、簡易ディスプレ繧?

パイソンのサンプルコード、チュートリアル臀??きキットがいい
RABホルダーも欲しい、ブレッドボード複数持ちで觸??能觸??に臀??存すると良い

別で買う必要がありそう
 赤藹??線カメラ、人感、振動、ジャイロ、加速度、距離、GNSS(GPS)、ドップラ繝?

■先人の足跡を調べよう(センサ繝?/モジュール次第か)
ドライブレコーダ、車防犯カメラ・??録逕?8hrs)、自動録逕?/消去
360度録画、画蜒?を解析しエラー觸??蜃?
進入警報・??ログ、写真、メール・??
WifiやBTで遠隔ラジコ繝?
温度制御(一定の温度で扇風觸??をOn等)
赤藹??線でリモコンを繝?ッ繧?
IOを音声縺?
生体繝?ック・??眠気防止等)
 サーバ型:テキスト解析気分解析、メディアサーバ

■セットアップ
https://www.fabshop.jp/raspberrypi/pisettings-2/
https://raspida.com/rpi-setupwizard2019
https://pcmanabu.com/raspberry-pi-debut/

SDメモリカードフォーマッタ繝? (Windows/Mac用・??でフォーマット、FAT32
https://www.sdcard.org/jp/downloads/formatter/index.html

Raspbian Buster with desktop and recommended software をDL
https://www.raspberrypi.org/downloads/raspbian/

Etcherはでラズパイで使うOSのイメージをSDカードに焼縺?、ポータブル版縺?OK
https://www.balena.io/etcher/

起動縺?USB-C電觸??をぶち込むだけ、モニタ側縺?HDMI1に切り替え(miniHDMI変觸??が硬いが奥まで挿す)
 USBキーボード・?マウス・??LANケーブルも初期設藹??には藹??要、セットアップが済めば電觸??USB-Cの縺?
PW・?ロケール設定、Wifiを聞いて縺?る(Pi縺?Macアドレスを言ってもらいたいが、、
 ターミナル縺? ifconfig →Piに右臀??メニュ縺?Wifi pw(share key)、ルータ縺?Pi Macアドレス を設藹??
日本鐔??にしてアップデートを觸??けるとメニュー軆??が日本鐔??になる
ラズパイ設定縺?SSH縺?VNCを有効にする(SSHのセキュリティ設定が面倒な場合縺?SSHは使繧?ない)
 IPアドレス・??右臀??縺?VNCアイコンをクリックで分かる)、あるいは raspberrypi.local
 SSHコマンド ssh pi@IPアドレス あるいは ssh pi@raspberrypi.local
VNC縺?Real VNCのスタンドアロー繝?64ビューワーでいいのでは https://www.realvnc.com/en/connect/download/viewer/

HDMIを繋げているとリモートできるが繋がないとできない?
 電觸??投入藹??LEDの点觸??が消えたあたりでデスクトップは起動しているが
  解像度が設藹??されていない為、モニタが検出されておらずGUIが起動していない轤?
 sudo raspi-config で設定をする そ縺?1
  3 Boot Options Configure options for start-up を選択
  B1 Desktop /CLI Choose whether to boot into a desktop enviroment or the command line を選択
  B3 Desktop Autologin Desktop GUI, requiring user to login を選択
 sudo raspi-config で設定をする そ縺?2
  7 Advanced Operations を選択
  A5 Resolution を選択
  DMT Mode 51 1600x1200 60Mhz 4:3 を選択

■セキュリティ設定
https://qrunch.net/@nokonoko1203/entries/DIek2g0AhGRDkGDZ
https://qiita.com/mochifuture/items/00ca8cdf74c170e3e6c6
https://makezine.jp/blog/2017/09/secure-your-raspberry-pi-against-attackers.html

平時繋ぐLANは臀??般の人は入れないが、それ以藹??縺?LANに軆??げた時に危険・??
VNCのウィンドウではだれが何人ログインしているか分かる、見と縺?
運用時縺?SSH縺?VNCを無効にすればいい?

host名を変えた方がいい?
ラズパイ設定縺? raspberrydekapi 等に藹??譖?

ラズパイを最新版
$ sudo rpi-update
root pwを設藹??、初期なしf
$ sudo passwd root

piユーザの代繧?りのユーザを追加(f1/b)
sudo adduser xxx
groups pi でグループの確認
 -> pi : pi adm dialout cdrom sudo audio video plugdev games users input netdev spi i2c gpio
sudo usermod -G pi,adm,dialout,cdrom,sudo,audio,video,plugdev,games,users,netdev,input,spi,i2c,gpio xxx
groupが追加されたことを確鐔??
groups xxx
piユーザー内のファイルを、新鐔??ユーザーにコピ繝?(空フォルダ縺?magi pdfだけだが)
sudo cp -r /home/pi/* /home/xxx

piユーザーのオートログインを無効化
sudo nano /etc/lightdm/lightdm.conf`
autologin-user=pi をコメントアウトし
 #autologin-user=pi にする
新しいユーザー名を指定
sudo nano /etc/systemd/system/autologin@.service
ExecStart=-/sbin/agetty --autologin pi --noclear %I $TERM の臀??縺?
ExecStart=-/sbin/agetty --autologin xxx --noclear %I $TERM を追鐔??

新鐔??ユーザーがパスワードなし縺?sudo可縺?
sudo visudo
上記コマンド縺?/etc/sudoersファイルをエディタで開き#includedir /etc/sudoers.dの項目を編集
pi ALL=(ALL) NOPASSWD: ALL を削髯?
xxx ALL=(ALL) NOPASSWD: ALL を追鐔??
オートログインの確認 piユーザーがいなけれ縺?ok
who

デフォルト縺?piユーザーをsudoersから除藹??
sudo gpasswd -d pi sudo

新ユー繧?xxx縺?SSH/VNCできるか、ログインできるか、sudoできるか確鐔??

piユーザーを削除する(piのユーザー名を変更する、pi ユーザをロックする、という方觸??も)
sudo userdel -r pi
削除できたか確鐔??
id -a pi
次のようにでれ縺?OK id: pi: no such user

SSH証譏?書設定:面倒だ縺?SSHを有効にしないこ縺?
SSHのポート番号を変更する 49152〜65535
sudo nano /etc/ssh/sshd_config
#Port 22 を
Port 65535 に藹??譖?
rootユーザーで直接SSHログイン出来な縺?する
sudo nano /etc/ssh/sshd_config
#PermitRootLogin prohibit-password を
PermitRootLogin no に藹??譖?

■エディタ操作
^O縺?ctl+O

■開発環藹??
Python interpreter/GPIOライブラリのインス繧?
  sudo apt-get install python-dev
  sudo apt-get install python-pip
  sudo pip install rpi.gpio

Git/WiringPIのインスコ・??GPIO操作を行うC言語ライブラリ・??
sudo apt-get install git-core
git clone https://github.com/WiringPi/WiringPi
cd WiringPi
./build
gpio -v 実行してバージョン情報が表示されれば藹??了

I2C通信ライブラリのインス繧?
複数縺?I2Cデバイスを同時に制御できる、温度を測りモータを動かす等
sudo apt-get install libi2c-dev

(藹??考)
Apache+PHPのインス繧?
https://bit.ly/355p4LX
WiringPi-PHP縺?WiringPiをPHPで使う
http://www.feijoa.jp/laboratory/programming/gpioWithPhp/

■PG
 ログ藹??る系なので臀??定期間でバックアップを藹??る
 リモコン縺?LEDを光らせる>リモコン縺?PGスタート>リモコンでカメラやロ繧?
 ボタンを押すとブザーを鳴らしてカウントしその回数をディスプレ繧?
  ドライブレコーダ/車防犯カメラ・??録逕?8hrs)、自動録逕?/消去
  進入警報・??ログ、写真、360度録画、メール・??
  バイクセッティング鐔??録系ツール・??気温、GPS、加速度、サスやキャプ設藹??メモ・??

LED 抵抗 ボタン button
パッシブブザー Passive Buzzer
リモコン IRremote
ディスプレイ LCD1602

///プログラム解説
使用するチャンネルはモードを設藹??する必要がある
GPIO.setup([チャンネ繝?], [GPIO.IN また縺? GPIO.OUT])
 例:
 channel_list = [11,19]
 GPIO.setup(channel_list, GPIO.OUT)

デジタル出力では電圧をHIGH(3.3V)、また縺?LOW(0V)に設定できる
GPIO.output([チャンネ繝?], [GPIO.LOW また縺? GPIO.HIGH])
 例:
 GPIO.output(14, GPIO.HIGH)

GPIOからの入力をポーリングで読み藹??る場合の臀??
戻り値に縺?GPIO.HIGH(また縺?1、True)かGPIO.LOW(また縺?0、False)が返る
if GPIO.input(27):
    # ピ繝?27がHIGHの場合
else:
    # ピ繝?27がLOWの場合

GPIO.input/setup()縺? pull_up_down パラメータで、プルアップ抵抗(GPIO.PUD_UP)またはプルダウン抵抗(GPIO.PUD_DOWN)を有効にでき、その場合回路がつながっていない状態でもGPIO.HIGHまた縺?GPIO.LOWが読み出される
 例:
 GPIO.setup(27, GPIO.IN, pull_up_down=GPIO.PUD_UP)

  不定状態だ縺?GPIOの入力インピーダンスが高く高周波繝?イズを拾い誤臀??動が考えられる・?サー繧?
   GND側に藹??っ張っ縺?Lowに藹??定させるプルダウン抵抗だが、慣臀??的縺?Highにするプルアップの方が使用頻度が高い
    プルアップ回路・?? タクトスイッチON縺?Low、タクトスイッチOFF縺?High(平常時ON)
    プルダウン回路・?? タクトスイッチON縺?High、タクトスイッチOFF縺?Low(平常時OFF)
     ラズベリーパイでは内部プルアップ(ダウン・??が使え、外付けプルアップ(ダウン・??抵抗を省略できる
   http://raspi-studio.hatenablog.com/entry/2016/06/06/204053
   https://qiita.com/nishiwakki/items/e921d44a00a37c72979c
    プルアップ抵抗とマイコンの入力抵抗ではマイコン入力抵抗の方が遥かに大きい縺?電圧は全てマイコン側に加繧?る
    プルダウン抵抗は無縺?てもと思えるがスイッチを押した時に縺?5Vが抵抗なし縺?GNDに直接流されショートする
     https://voltechno.com/blog/pullup-pulldown/

イベント(エッ繧?)の觸??蜃?
GPIO.add_event_detect([チャンネ繝?],  GPIO.FALLING, callback=func)
 GPIO.FALLING → 立ち臀??がりエッジ・??(High→Low)
 GPIO.RISING → 立ち臀??エッジ・??(Low→High)
 GPIO.BOTH → 両エッ繧?

//// プログラムの起動と停豁?
パイソンを実行するcmd(ファイルの臀??置ま縺?cdで移動しtest.pyを実行)
 python test.py
Ctrl+Cでプログラムを止める

//// コツ
GPIOの状態を見るcmd
 gpio readall
ブレッドボードが悪いのか、結線が悪いのか、パーツが壊れているのか、プログラムが悪いのか、何が悪いか分からん
 テスターが要る

■電藹??回霍?
ラズパイ縺?1つ縺?GPIOピンにつき電觸??驥?が16mAまで、合計縺?50mAまで、電圧縺?3.3V
 その半分を超える電觸??を流すと寿命を縮めるおそれがあるそう→3mAにしと縺?、3.3v= 3mA*1kΩ
GPIOピンは觸??用入出力(General Purpose Input/Output)ポート、入力と出力ができる、40ピンある
 GPIO 2-27縺?26ピン、GNDx8、3.3Vx2、5Vx2、ID_SD縺?ID_SC縺?2ピ繝?
  ID_SD/ID_SCは藹??部縺?EEPROMというデータを保存するための部品を接続するピンだがあまり使繧?ない

GPIOピンには・??-どっちを入れてもいいの・??→IOなので良いが注諢?点がある
https://robot-workshop.net/raspberry-pi-gpio
https://tool-lab.com/make/raspberrypi-startup-22/

 //// GPIOを使うときの注諢?轤?
 ショート:電觸??の・??と・??を直軆??すると驕?剰な電觸??が流れる
  3.3v/5vピンをGNDピンに直軆??しない事
  GPIOピンを出力モード縺?GNDピンに軆??げない事(入力モード縺?OK)
   GPIOピンは基本は入力モードにして、必要なものだけ出力モード、あるいはショートするケースには抵抗を入れてお縺?



ピン指定方觸??が2種饅??あり、物理ピン番号・??1,2/3,4~とコネクタに連番が振られている)による指定、BCM(GPIO)番号による指定がある
ラズパイのプロセッサはブロードコム社縺?BCM2837だが、このプロセッサ縺?GPIOピン縺?53本あり、2番から27番縺?26本がラズパイ縺?GPIOコネクタに接続されている。例え縺?GPIO2というピンがあり、これがコネクタ縺?3番ピンにつながっている
https://www.denshi.club/make/2016/02/raspberry-pi2-3.html

 GPIOピンの中でもGPIO2縺?GPIO3は臀??のピンと電觸??的特性が異なり注諢?が必要
  I2Cにも使繧?れ1.8kΩの抵抗が接続されている(1.74Vとなる?)
 SPI通信で縺?GPIO番藹??GPIO7-GPIO11縺?5ピンが専用に割り当てられます(MOSI, MISO, SCLK, CE0/CE1で通菫?)
 アナログ出力ができるピンはどのモデルでも固藹??縺?GPIO18の縺?
  アナログ出力では周波数とデューティ觸??でモータ制御などに使うPWM制御が藹??

ラズパイの電圧読み藹??り
 0V〜0.8V: 0Vとして読み藹??る
 0.8V〜1.3V: 不定
 1.3V〜3.3V: 3.3Vとして読み藹??る

計算と藹??地・?? 結局計算しても正確ではないし、そもそもどれ縺?らいの電觸??を流すと、どの縺?らいの譏?るさで光るのかもよ縺?繧?からない→抵抗は大きめから
http://robocad.blog.jp/archives/662656.html

LED譏?るさ:1cd ろうそ縺?、400cd 40W蛍光灯、100cd 100W蛍光轣?
VF 1.85Vは順方向電蝨?(VF)を表す。LEDには極性がありア繝?ード(プラス、端藹??長い、下側、足曲がり)からカソード(マイナス、端藹??短い、上側、足真っ直ぐ)に正電圧を加え使用。電圧が菴?いと電觸??が流れても発光せず、ある電圧を超えると電觸??が流る
 │(-)
 ―
 笆?
 │(+)

アクティブブザー・??発振回路が入っており決まった音軆??でブザー音が鳴る
パッシブブザ繝?:スピーカと同じで臀??えた音声信号で発生、音軆??を変えられる

I2C縺?16本あるIOエキスパンダ(MCP23017)のポートを制御できる。8個使用すれ縺?16x8縺?128ポートが使用藹??
http://kzhishu.hatenablog.jp/entry/2016/07/19/090000

■電觸??は・??から-に觸??れる、電藹??は・??から+に觸??れるが
 電荷の移動である電觸??と電藹??は直接は関臀??ない
  電觸??のスイッチを入れると、電荷は直ちに移動しますが、電藹??がその速さで移動している繧?けではありません
  電藹??はカタツムリの歩みより遅い速度でのらり縺?らりと動いているだけ
   GNDから電藹??を集める繧?けではない
 電觸??の臀??組みは、正鐔??があるのではな縺?、電荷の藹??い少ないで電圧が現れる、電荷の藹??いほうから少ないほうに電觸??が流れる
  電荷の移動の犯人のひとつに電藹??、他にはイオンであったりプラズマであったり
https://oshiete.goo.ne.jp/qa/8305340.html

twitter
Hatena
Google Buzz
newsing
Yahoo!
Buzzurl
Technorati
del.icio.us
Choix
Iza!
Livedoor Clip
Facebook
Evernote
 

Posted by funa : 06:18 PM | Gadget | Comment (0) | Trackback (0)