LED電流制限抵抗のワット数

ここ数日LEDの制限抵抗に関する記事が続いていますので
それに関する重要な説明をしておきます。

LEDの制限抵抗を計算する場合、LEDに流れる電流値だけでなく、
その電流と電圧から電力を計算してそのワット数以上の抵抗を使用する必要があります。
一番一般的な抵抗は1/4W(250mW)です。
電圧、抵抗値、電流値、電力値を表にまとめてみました。

抵抗値 は一般的な E6系列で選定しています。
LEDの最大電流を20mAとした場合、電流値の枠が赤になっている部分でLEDが壊れる計算となります。
また1/4Wの抵抗を使っている場合、電力値の枠が赤になっている部分では抵抗が焼けてしまいます。
普通にマイコンボードと同じ電源にLEDを接続する使い方では
12Vや24Vの電源は使いませんが、組込み制御の場合、ノイズ軽減の為に入出力モジュールと
マイコンボードを別電源で使用します。また工業用のセンサー類の定格電圧は12V~24Vが一般的です。

電圧(V) 3.3
抵抗値(Ω)電流(mA) 電流(mA) 電力(mW)
100 33.00 108.90
220 15.00 49.50
470 7.02 23.17
1000 3.30 10.89
1500 2.20 7.26
2000 1.65 5.45
4700 0.70 2.32
10000 0.33 1.09
22000 0.15 0.50
47000 0.07 0.23
電圧(V) 5
抵抗値(Ω)電流(mA) 電流(mA) 電力(mW)
100 50.00 250.00
220 22.73 113.64
470 10.64 53.19
1000 5.00 25.00
1500 3.33 16.67
2000 2.50 12.50
4700 1.06 5.32
10000 0.50 2.50
22000 0.23 1.14
47000 0.11 0.53
電圧(V) 12
抵抗値(Ω)電流(mA) 電流(mA) 電力(mW)
100 120.00 1440.00
220 54.55 654.55
470 25.53 306.38
1000 12.00 144.00
1500 8.00 96.00
2000 6.00 72.00
4700 2.55 30.64
10000 1.20 14.40
22000 0.55 6.55
47000 0.26 3.06
電圧(V) 24
抵抗値(Ω)電流(mA) 電流(mA) 電力(mW)
100 240.00 5760.00
220 109.09 2618.18
470 51.06 1225.53
1000 24.00 576.00
1500 16.00 384.00
2000 12.00 288.00
4700 5.11 122.55
10000 2.40 57.60
22000 1.09 26.18
47000 0.51 12.26

123D Circuitsにイスト回路を組んでいます。
Start Simulationをクリック後、パワーサプライの電圧を上げていってください。
LEDが順番に壊れます。

Arduino の実験中に LCDを壊してしまいました(泣)

ArduinoでLCDをコントローするテストをしていたら、バックライトLEDの制限抵抗が小さすぎてLCDを壊してしまいました。

といっても、AutoDisk社が提供している電子回路シミュレータ 123D circuits 上での話ですが。

定格以上の電流を流すとパーツが壊れるのまで再現しているんですね。
おまけに「壊れたマーク」にマウスカーソルを合わせると原因まで表示してくれます。
楽しすぎ。

LCDが動くと色々な応用がききますね。
アナログ入力値を表示したり、パルスの周期を測定して表示したり。

ただ実機ではないのでスピード的に難しい部分もあるでしょうが。

今回の123D circuits のデータは

https://123d.circuits.io/circuits/924835-lcd-test

に置いています。
「Start Simulation」ボタンを押すと LCD が壊れます。

123D Criuits はユーザー登録すれば作った回路を保存出来ます。
無料ですので是非登録して、色々と遊んでみてください。

Arduino Uno 13PIN に関する誤解

Arduino UNO でLチカのサンプルを紹介しているサイトが沢山ありますが
そのほとんどが配線図の中に制限抵抗が入っていません。

確かにそれでも点灯はしますが、これは正しいLEDの使い方ではありません。
(ArduinoにLEDを電流制限抵抗なしで繋いで壊れないのはArduinoの出力電流が最大100mA40mAに制限されているためですが、これはLEDに電流が流れ過ぎです。)

サイトの中には、「13PINは基板内部で1kΩで制限されている」と説明しているページもありますが、これも間違った解説です。
確かに基板上の13PINに接続してあるLEDには制限抵抗が入っていますが、コネクターの13PINはICから直接接続されています。
回路図の赤丸間には抵抗は入っていません。

LEDには制限抵抗が必要です。
ごくまれに制限抵抗入りのLEDも販売されていますのでそれは例外となりますが。

LEDに流す電流はだいたい10mAで良いので、Arduino UNO の場合は5Vで動いていますので制限抵抗は500Ωとなります。
500Ωの抵抗は一般では手に入りにくいので510Ωを使うことになります。
(LEDの電圧降下も考慮する必要があります) ← 2017/02/01 追記
ただLEDは5mAでも十分点灯するので自分は1kΩの抵抗を良く使っています。

UNO_回路図

カラー抵抗の覚え方

随分昔の話ですが自分がカラー抵抗の色を覚えた時の語呂合わせを書いておきます。
中学生の頃(約40年前)ですから、今の時代にそぐわないですが(笑)。

0 : 黒 黒い礼(0)服
1 : 茶 お茶を一(1)杯
2 : 赤 赤いニ(2)ンジン
3 : 橙 第(橙)三(3)の男
4 : 黄 岸(黄)(4)恵子
5 : 緑 緑子(5)
6 : 青 青二才のろく(6)で無し
7 : 紫 紫式(7)部
8 : 白 ホワイト(白)ク(9)リスマス
9 : 灰 ハイ(灰)ヤー(8)

ちなみにフラットケーブルの色もこの並びになっています。

簡単にIoTを実現する「Blynk」の使い方 No.2 Arduino側

前回スマホ側の「Blynk」の使い方を説明しましたので
今回はArduino側の簡単な使い方を説明します。
Arduinoはインサーネットシールドにてインターネットに接続しています。

先ずは
https://github.com/blynkkk/blynk-library/releases
から ソースコードをダウンロードします。
Release v0.3.0 · blynkkk-blynk-library · GitHub
ダウンロードしたら適当な場所に解凍してください。

次に
Arduino IDEに「Blynk」のライブラリを登録します。

Arduino IDEを起動して
スケッチ->Include Library->Add ZIP Library… で先ほどダウンロードしたZIPを指定します。
Blynk_ライブラリ追加
ライブラリが正常に設定されると先ほどのプルダウンリストの下の方に「Blynk」が追加されます。

次に
Arduinoに「Blynk」のスケッチを書き込みます。
Arduino IDEから先ほど解凍したファイルの中から「Arduino_Ethernet.ino」を読み込んで
スマホで作ったアプリの AUTH TOKEN を設定します。
修正する箇所はココだけです。

「Arduino_Ethernet.ino」は
blynk-library-0.3.0\examples\BoardsAndShields\Arduino_Ethernet
フォルダー内に有ります。

YourAuthToken_ORG
赤枠の部分に「AUTH TOKEN」を設定します。
YourAuthToken_MOD
AUTH TOKEN を設定したら
「マイコンボードに書き込み」を実行します。

「マイコンボードに書き込み」が完了したら
Arduino IDEで「ツール」→「シリアルモニタ」を起動します。

IPアドレスの割振りが終わって
「Ready (ping: 190ms).」と表示されたら、Arduino側の「Blynk」は正常に起動しています。
Blynk_ターミナル

これでスマホからArduinoの入出力をモニタ・コントロール出来ます。

以下の写真では
ArduinoのA0、A1に接続したボリームのモニタと
9PINに接続したLEDをON/OFFしています。

Blynkスマホアプリ

Blynk_テスト環境

スマホ側の説明はこちらです。

今回使用したArduinoのインサーネットシールド(互換品)をAmazonで販売しています。
当然Blynkでの動作確認済です。
インサーネットシールド
2015年8月19日現在の販売価格:1,850円(日本国内送料無料)

ArduinoやIchigoJamで遊ぶために「37 in 1 box Sensor Kit」を購入してみた

センサーやLEDとかが、てんこ盛りのモジュールセットを購入しました。
中華サイトからの格安購入なのでケースも無ければ説明書も無し。
センサーの写真が印刷されたペラ紙一枚。
とりあえず、そのペラ紙に型名を書き込んでみた。

Amazonで「smartDIYs」さん他数社で売られているみたいですがこちらは説明書付きなのかな。
ちなみに「smartDIYs」さんのは6,480円です。

これを説明書無しで売ったら苦情の嵐だろうな、たぶん。

すべてのセンサーのサンプルプログラムを書いて、それが出来たら販売しよう。
いつになるか……。

ちなみにセットの内容は
.1 x 3-color LED module KY-016
.1 x Mercury open optical module KY-017
.1 x Yin Yi 2-color LED module 3MM KY-029
.1 x Active buzzer module KY-012
.1 x Temperature sensor module KY-013
.1 x Automatic flashing colorful LED module KY-034
.1 x Mini magnetic reed modules KY-021
.1 x Hall magnetic sensor module KY-003
.1 x Infrared sensor receiver module KY-022
.1 x Class Bihor magnetic sensor KY-035
.1 x Magic light cup module KY-027
.1 x Rotary encoder module KY-040
.1 x Optical broken module KY-010
.1 x Detect the heartbeat module KY-039
.1 x Reed module KY-025
.1 x Obstacle avoidance sensor module KY-032
.1 x Hunt sensor module KY-033
.1 x Microphone sound sensor module KY-038
.1 x Laser sensor module KY-008
.1 x 5V relay module KY-019
.1 x Temperature sensor module KY-001
.1 x Temperature sensor module KY-028
.1 x Linear magnetic Hall sensors KY-024
.1 x Flame sensor module KY-026
.1 x Sensitive microphone sensor module KY-037
.1 x Temperature and humidity sensor module KY-015
.1 x XY-axis joystick module KY-023
.1 x Metal touch sensor module KY-036

ペラ紙に型名を記入しました。

DesignSpark PCBで設計した基板を面付けしてV-CUT有りでELECROWに発注

久しぶりにELECROWに基板を発注した。

今回は1枚の基板に6枚の同じ基板を面付けして、V-CUTを依頼。
オーダー画面だと、面付けやV-CUT依頼のやり方がイマイチわからなかったが
Panelizingの項目で「Single PCB with milling」を選択して
ガーバデータは6枚を面付けしたデータにし、ボトムシルクのデータにC-CUT用のラインをシルクデータで入れて発注。
設計はDesignSpark PCBです。

発注時のメッセージに以下を入力

Outline data is contained in the Bottom Silkscreen file.
Please V-CUT.
V-CUT pattern also found in the Bottom Silkscreen file.

オーダーステータスを見ると


08/11/2015 Confirmed
Outline data is contained in the Bottom Silkscreen file.
Please V-CUT.
V-CUT pattern also found in the Bottom Silkscreen file.

08/11/2015 Confirmed
Transaction ID: ??????????????????
Payment Type: PayPal Express Checkout (instant)
Timestamp: 2015-08-12T03:00:34Z
Payment Status: Completed
Amount: 25.74 USD

08/11/2015 PCB Processing
Dear Customer,
We have recieved your order and the gerber file, our engineer is checking the gerber file, if the file meet the requirements, we will put it into production ASAP. Thank you!
Best Regards
Elecrow

08/12/2015 In production
Dear Customer,
We have put your design into production, it will needs about 4-7 business days. Thank you!
Best Regards
Elecrow

ガーバファイルのチェックが終わって製造工程に入っているっぽい。

ちゃんとV-CUTされて届けば良いが。
ちなみに今回発注したボードはこれです。

簡単にIoTを実現する「Blynk」の使い方 No.1 スマホ側

ArduinoRaspberry Piをインターネット経由でコントロールするためのスマホアプリ「Blynk
これを使えば簡単にIoTが実現できます。

まだ使い始めたばかりですが、思った以上に簡単に使えたのでサマリーだけですが解説します。

「Blynk」のホームページです。

Blynkホームページ

Blynkホームページ

まずは AppStore または Google Play から 「Blynk」アプリをダウンロード、インストールして下さい。
Blynkで検索すればすぐに出てきます。

1. プロジェクトの作成
インストールした「Blynk」を起動して、アカウントを作成してください。

アカウントを作成後はまだプロジェクトが何も無い状態なので以下のような画面になります。
「Create New Project」をタップしてください。
Blynk_1

2. プロジェクトの設定
「Create New Project」をクリックすると 「プロジェクトの設定」 に表示が変わります。
a. Project Name の欄にプロジェクト名を入力します。Test とか何でも良いです。
b. HARDWARE MODEL : コントロールするマイコンボードを選択します
  Arduino UNO とか Raspberry Pi とか自分が制御しようとしているボードを選択しま
選択できるのは
・Arduino(Due、Mega、Nano、Pro Micro、Pro Mini、UNO、Yun)
・ESP8266
・Generic Board
・Raspberry Pi 2/B+
・Raspberry Pi(Rev1)
・Raspberry Pi A/B (Rev1)
・Spark Core
・TinyDuino
・Wildfire v2
・Wildfire v3
です。
c. AUTH TOKEN
ここに表示されているコードをターゲット側のプログラムに設定します。
アプリ側のコードとターゲット側のコードが一致していないと動きません。
「Refresh」ボタンをタップするとコードが更新されて別のコードが表示されます。
「E-mail」ボタンをタップするとE-mailにコードをメールします。
d. Create ボタンをタップして このプロジェクトを作成します。
Blynk_2

3.パーツの配置と設定
プロジェクトの作成直後の画面は以下のようになっていますので + の部分をタップしてください。
Blynk_4

+をタップすると以下のように WIDGET BOX が表示されます。
WIDGET BOXで 「Button」をタップしてください。
Blynk_5

以下の画面のように「Button」が配置されます。
Blynk_6

この配置された「Button」をタップするとこの「Button」の設定画面になります。
まずは、青枠の部分が「名前」と「色」の設定です。
「色」はタップする度に変わります。
Blynk_7

次にこの「Button」が押されたときに変化させる PIN を設定します。
PINの部分をタップしてください。
Blynk_8

この例では Degital の D0 PINに割り付けています。
Blynk_9

次にこの「Button」の動作を選択します。
「PUSH」は ボタンを押している間だけ「ON」になり
「SWITCH」はボタンを押す度に「ON」「OFF」が切り替わります。

「DELETE」は配置した部品を削除する時に使います。

設定が終わったら 「Button Settings」の横の「←」をタップしてください。

Blynk_10

「Button」を配置した時と同じように今度は「LED」を配置してください。
Blynk_11

「Button」の時と同じように「LED」をタップして「LED」の設定を行います。
内容は「Button」の時と同じです。
Blynk_12

「LED」の設定が終わったら以下の画面の青枠の部分をタップしてください。
アプリが実行されます。
Blynk_15

まだ、ターゲット側が動いていないので以下のように
「Your Arduino UNO is not in Network」と表示されます。
Blynk_16

以上スマホ側の設定を簡単に説明しました。
次回はターゲット側(今回はArduino UNO)の設定を説明する予定です。

Arduinoを搭載したオープンソースPLC

ArduinoがPLCにまで浸食。

PLCがオープンソース、しかもArduino搭載って、楽しすぎる。

ただ、PLCはProgrammable Logic Controllerの略で
ラダー図でプログラムを書くのが一般的なので
Arduino同様、Arduino IDEによりプログラミングするのはどうなんだろう。

たぶんほとんどのシーケンサープログラマーは簡単に移行できないし、
どちらかと言うと、組込みプログラマー向けかと思うので
現行のPLC(シーケンサー)ユーザーには受け入れられない気がする。

ただ自分としては現物を入手していじってみたい。

Arduino搭載のオープンソースPLC

Arduino搭載のオープンソースPLC

↑ ↑ ↑ ↑ ↑

Browser Shots』というプラグインを使って取込んでてます。