カテゴリー : Ardunio

Arduino(sanguino)を使ったNTP時計制作中2…

メインのマイコンとイーサの方は問題あるので基板を作り直しですけど、3パターン作った表示部分については問題なしです。修正した物をPCBCARTで作ってもらうべくEagleさんとお話中ですが、うまくいかないというかはいらないんですけどどうしましょうかねぇ。

ちなみに、1インチの7セグメントLEDを今回使用しているのでLEDの色は青/赤/緑の3色を作っております。(点灯した状態ではメイン基板直したのが出来てきたらアップする予定)

Arduino(sanguino)を使ったNTP時計制作中…

制作中というか、こんな形になってきました。
だいたいは想像通りの仕上がりで満足なのですが、ここに至るまでにいろいろと…。

■正面からの全体

■スイッチ類と照度センサとか

■外部接続用のコネクタたち

続きを読む

Arduino(sanguino)を使ったNTP時計の部品リスト

思いに任せて作ってしまったのでどの程度の部品が必要かを書きだして見ることにする。

単価計算とかすると欝になりそうな部品を使っているような気がしてきました…。

続きを読む

Arduino(sanguino)を使ったNTP時計の基盤到着

かなりの回数の修正をかけて中の人をあきれさせながらも何とか形になりました…。
さてさて、一回でうまく動くのか?今週来週ぐらいでぼちぼち組み立てていこうと思います。

ちゃんと出来たらパーツセットにして配布できたらいいなとか思っているんですが、需要あるかな??


※:今回はソルダーを黒にしてみましたが、配線が見にくいのです。

Arduinoを使ったStepUpコンバータ

専用IC(MC34063A等)を使ってステップアップした方が簡単で手間が省けるのですが、明るさをAVR側からコントロールするのがどうにも面倒な気がするので実験してみます。
まあ、ニキシー点灯させるなら専用ICで電圧調整したところをPWMでスイッチすれば人間の目にはいい感じになるのではないかと思うのですが…。
実際の所はニキシー自体をダイナミック点等しているところに持ってきてさらにPWMで明度コントロールとか考えると面倒なのではないかと思うのです。

一様、電圧測定部は抵抗分圧で200Vまでは測定できるようにしています。
ただし、電圧がおおきになるとどうしても誤差が出てきてしまうようで考え直したほうがいいかもしれません。
狭い範囲での電圧コントロールであれば誤差を抑えることができるので大丈夫なのですが…。

ではでは、例によって構成は以下の様になります。

続きを読む

ArduinoにENC28J60を載せたピン互換ボード

ずいぶん前に作るだけ作ってあったのですが、ちょっと修正して置いておきます。
たぶん、今のところ作る予定はないので当分このままになってしまうと思いますが参考にでもしてください。

元々のデザインはRTCも載せてあったのですが、いろいろ考えたあげくに除外しました。

■Eagleファイル:erduino_2

Arduino+温度センサ(DS18B20)+フルカラーLEDで遊ぶ

フルカラーのLEDを手に入れたので点灯試験を兼ねて遊んでみました。
参考サイトの「色彩表示温度計」は面白いのですがいかんせん表示の段数が少ないのでどうしても変化時の滑らかさが足りません。
では、表示段数を増やせばいいのではと思うのですがそうするとarduinoの貧弱なメモリが悲鳴を上げます…。

どうしたものかと考えた結果、参考サイトの「RGBLEDの色を段々に変化点灯」で使用しているHSV色空間の連続変化と組み合わせれば何とかなるのではないかと考えた結果です。

■構成
Arduino:ATMega328P
Temp:DS18B20
LED:RGBLED(カソードコモン)抵抗値は適当に計算して合わせました。

続きを読む

Arduino(sanguino)を使ったNTP時計の基盤設計中

只今基盤のほうを設計中であります…。

ちょっと詰め込みすぎたことは否めない感じになってきておりますが、何とか全部入れたいです。

Arduino(sanguino)を使ったNTP時計(Web設定画面)

Arduino(sanguino)を使ったNTP時計

去年からarduinoを使ったNTP時計をボチボチと作成中であります。 ようやくある程度の形になってきましたので、メモとして書いておこうと思います。

構成に関しては幾多の変遷を辿りまして最終的には以下の構成になりました。 本当はsanguinoを使う予定は全くなかったのですが、プログラム容量が足りなくなってしまいやむなく変更しました。

使いまわせるように考えて、メイン側構成で7セグ表示するためには不要なはずのStepUpコンバーター回路を入れています。 標準状態ではMC34063Aの上限の40Vまで、外部MOSFETを搭載すれば300V位までは出ます。なぜかと言いますと、 最終的には表示部だけ載せ替えれてニキシー管を駆動したおと思っているからです~。

回路図載せておきますけど、あまり綺麗に書けていません…。 IDEはsanguino対応のため内容書き換えしてライブラリの方も随分中身をいじりました。

せっかくEthernetモジュールを搭載してNTPを取得しているので、 Webクライアントから現在の日時と設定情報の確認と変更が出来るようにしています。(設定画面とかはあとでアップします)

RTC用のライブラリが結構使えそうな予感です。秋月の8564NBにも対応させてBCD変換なしで時刻設定可能になっています。(その分容量ちょっと大きいです)

最終的には基盤を起こしてある程度はちゃんとした形にしてみたいです。

■回路図

■構成

  • メイン構成
    AVR:arduino(sanguino 644P)
    USB-Serial:FT232RL
    RTC:DS1307+BackupCap
    ETH:ENC28J60
    StepUp:MC34063A(NJM2360A)+IRFD220(MOSFET)
    Senser(Temp):DS18B20

 

  • 表示部構成
    Display:7SegmentLED(1inch)
    DisplayDriver:MAX7219
    DriveIC:74HC7066 or 2SA1015+ULN2003
    Senser(Lux):S9648-100
    ※:表示部構成はモジュラー形式で差し替え可能(4インチとかの7セグも駆動できます)

■使用ライブラリ&スケッチ

Arduino開発環境 Arduino 0023-IDE(差分) ※:arduino-0023_diff(Arduino 1.0には未対応)

使用ライブラリ(一部機能追加修正)
MAX7219用ライブラリ(表示用キャラクタ修正):LedControl
RTC用ライブラリ(ゼロリセット機能追加): RTClib(DS1307/8564NB両対応)
ENC28J60用ライブラリ(NTP用機能有効化):EtherShield

DS18B20用ライブラリ:OneWire
SWチャタリング防止ライブラリ:Bounce

使用スケッチ: ※:テスト用のデバッグコードそのまま入っていますのでかなり読みにくい上汚いです。

■参考情報サイト

What Is Sanguino? – Sanguino.cc http://sanguino.cc/

ENC28J60 ≪ Andy’s Life http://blog.thiseldo.co.uk/?tag=enc28j60

DS1307 RTC tutorial http://www.ladyada.net/learn/breakoutplus/ds1307rtc.html

【コラム】愉しみを数ボルト (2) パワーMOS-FETを使おう | パソコン | マイナビニュース http://news.mynavi.jp/series/volt/002/index.html

なんでも作っちゃう、かも。 Arduinoで遊ぼう – フォトICダイオード S9648-100 を使って明るさを求める http://arms22.blog91.fc2.com/blog-entry-416.html

なんでも作っちゃう、かも。 Arduinoで遊ぼう – リアルタイムクロック http://arms22.blog91.fc2.com/blog-entry-232.html

arduino使い方:RGBLEDの色を段々に変化点灯 http://www.geocities.jp/zattouka/GarageHouse/micon/Arduino/RGBLED/RGBLED1.htm

色彩表示温度計シールド (arduino): Modelisme hebdomadaire http://skt48.cocolog-nifty.com/blog/2011/04/post-8fbb.html

Arduino playground – LEDMatrix http://arduino.cc/playground/Main/LEDMatrix

Arduino playground – OneWire http://www.arduino.cc/playground/Learning/OneWire

Arduino playground – Bounce http://www.arduino.cc/playground/Code/Bounce