2015/12/11

ポータブル電動シェーバーPQ208を買った

,
 Philipsが発売しているポータブル電動シェーバーのPQ208を買ったので、レビューです。
※写真は今度貼る…予定

 髭剃りは旅行に必要なアイテムの一つです。ですが、家庭用のを持ち運ぼうとすると、重い、大きい、ケースが無い、などの問題があって、あまり便利ではありません。そこで、ポータブル電動シェーバーというのを購入してみました。

買うまで

 ポータブル電動シェーバーは、幾つかの会社から発売されています。自分の知る範囲では、

  • Philips PQ208
  • BRAUN M-90
  • Panasonic ES3823P/ES-RS10/ES518P(一枚刃)、ES-KS30/ES6801P/ES6500P(回転式)
  • 無印良品 PSV-MJ
があります。どれも実勢価格は1000-3000円程度で、本格的な電動シェーバーと比べると安いです。その分、性能も値段相応なようで、かゆいところに手が届かない感じです。今回はいつも使っているBRAUN社のものか、回転式を試しに使ってみたいのでPhilipsのものかで選ぶことにしました。

 PQ208とM-90の一番の違いは、刃の種類が異なる点です。前者は回転式、後者は往復式になります。
 また、PQ208とM-90を比べた時に、PQ208のメリットは「替刃がある」ことです。M-90の方は替刃ありません。まあ、PQ208も替刃HQ56(3個入り、2,700円くらい)を買うより本体を新しく買ったほうが安い気がしますが…。
 一方、PQ208のデメリットは「水洗い出来ない」ことです。衛生的に少し不安が残りますが、一応お掃除用のミニブラシはついてきます。
 共通点は、どちらも乾電池駆動であることです。充電器内蔵が良かったな…。Panasonicのモデルなどにはあるようです。また、Philipsの前モデル?のPQ217も充電式になっていますが、持ち運びと電池の持ちの面で賛否両論あるようです。

 今回は、回転式を試してみたかったので(まあ安いですし)、PhilipsのPQ208を買ってみました。

実際に使ってみた感想

 買った感想ですが、携帯性は抜群です。ケースもピッタリでそれなりに丈夫そうですし、刃の部分はさらに保護ケースを嵌めるようになっています。持ち運びが前提なので、ここは強いです。
 気になっていた清掃ですが、刃の下に剃ったヒゲが溜まるようになっていて(爪切りみたいな)、そこだけお手入れすればよいので、思ったほどでもありませんでした。ただ、やはり水洗いで済ませられない面倒くささというのはあります。

 ブラシも、ケースに入る場所が無さそうな気がしていましたが、一緒に仕舞うことができました。

 という風に、思ったよりも使い勝手の良さそうな製品で満足していたのですが、やはり肝心の剃りに関しては家庭用に劣ってしまっている気がします。慣れればさほど気にならなくなりましたが。何しろモーターの回る音がとてもおもちゃに似ています。
 単3電池2本で動いているのですが、刃の回転音が一定ではないので、ちょっとパワー不足のように思えます。トルクが足りないのかもしれません。

オチ

 個人的な話ですが、どうも回転式だと毛がカミソリ負けしてしまうようです。時々チクっとする。
 あと、ついでに家に置いておく用のシェーバーも760cc-7(BRAUN)に買い換えたのですが、これが使い勝手がよく、しかも水洗いができ、ハードケースまでついてきてしまったので、正直山以外にPQ208持っていかなさそうです…。
Read more →

2015/11/24

河口湖美術館バス停の位置

,
 この記事は、「富士急行バス 甲府駅~富士山駅線」の河口湖美術館バス停の位置について述べています。

結論 

御坂みちの、レストラン紅鶴さんの前辺りです。乗換案内NEXTにも地図があります。


注意 : 河口湖周遊バスのバス停とは300mほど離れています

バス停に貼ってある地図

 富士急行バスのHPには主な停留所しか書かれていませんが、実際はもっと細かく停留所が設置されています。乗換案内NEXTのサイトが分かりやすいです。

なんでこの記事を書いたか

この間、河口湖美術館から石和温泉駅へと移動するのに、この路線バスを使いました(河口湖駅まで戻って電車を使うよりも大抵早いですし、安いです)。それで、河口湖美術館バス停が河口湖周遊バスのものとは違うことを、現地に行って初めて知り、これはネットに書いてないと困るでしょ…と思ったので書きました。

 300mほど離れていて、急ぎ足で移動しましたが5分弱かかりました。バス自体は夕方に乗ったので観光客が全然おらず、とても空いていました。

 また、このバスは「路線バス」なので「予約不可」です(電話して聞きました)。本当に普通の路線バスの車両が来ます。
Read more →

2015/06/23

[電子工作]YAHAアンプを作った

,
 12Vで真空管を動かせることが特徴の、YAHAアンプを作りました。

2020/05/06 追記:続きは新Blogに書いています。http://vita-brevis.hatenablog.com/entry/2020/05/06/045822

2016/05/14 追記 : なんだか全然よく動かないので、なにか問題があるのでしょう…でもどこだか分からない。とりあえず、この作例は参考にしないほうがいい気がします…。

外観図。こんな感じ


といっても、まだ動作確認途中なので、出来ました程度です。
片chのみ動いて、しかもハムノイズ(100Hz)がかなり乗っている状況。


回路図
回路図



パターン図
パターン図


部品選びに結構苦労しました。縦向きにスイッチが動かせて、スルーホール実装できて、なおかつ耐圧がDC24V以上、電流0.5A以上のスイッチなんて全然なかった。青のLEDインジゲータも種類がなく、100k2連もDigi-Keyにはそこまでない。
5Wでセメントや巻線形ではない抵抗も少なかった。
スライドスイッチも、直流0.5A弱流せるものは少なく、気がついたらこんな大きなものを使う羽目になっていた。

DC24Vまで電圧を加えられる、低ノイズで出力電圧が可変なLDOなんてのもあまりない。PTCも、耐圧を上げるとだんだんサイズが大きくなっていき、値段も上がっていくし。コンデンサも1000μFを超えた辺りから選択肢が減っていく。

真空管ソケットに至っては、穴位置などが記載された、ちゃんとしたデータシートが付いたものを探すのに苦労した。
Read more →

2015/06/01

[電子工作]QFNパッケージのハンダ付けについて

,
 QFNパッケージのハンダ付けに挑戦してみたので、感想などを書いておきます。

QFNパッケージとは

ググってください

どうして練習したの?

最近の部品は小型化が進み、TSSOPやQFPパッケージですら時代遅れとなりつつあります。新製品によくあるパッケージとして、BGA(Ball Grid Array)やQFN(Quad Flat Package)というものがあります。このうちBGAは、裏側にボールが並んでいるもので、手ハンダだと流石に付けるのが難しいです。一方QFNパッケージは、側面にパッドが並んでいるものなので、なんとか手で付けられるようです。インターネットで検索してみると、たくさんの先人の方々の例が出てくるかと思います。
 さて、電子工作をしていると、やはり新しい部品を使いたくなるものです。なんといっても、高機能ですし、性能も従来のものに比べると便利な物が多いです。特に、電源ICなどではTSSOPパッケージのものが少なく、QFNが主流になってきているような気がします。
 そんな理由から、「QFNをそろそろ使えるようにしないと」と思い、今回(Digi-Keyに部品を買う機会があったので、ついでに購入して、)練習してみることにしました。

今回使った部品

今回使った部品は、以下の表に示す3つのICです。Digi-Keyで、『なるべく安く』『(JTAGなどで)動作確認がしやすい』『QFNパッケージの』ICをいろいろ探したところ、結果的にこうなりました。


型番 製造メーカー 説明 梱包形態/ケース 値段
XC2C32A-6QFG32C Xilinx Inc IC CPLD 32MC 5.5NS 32QFN 32ピンVFQFN露出ボトムパッド JPY 188
STM8S103K3U6 STMicroelectronics MCU 8BIT 8K FLASH 32UFQFPN 32ピンUFQFN露出ボトムパッド JPY 229
ATTINY48-MU Atmel IC MCU 8BIT 4KB FLASH 32QFN 32ピンVFQFN露出ボトムパッド JPY 147

 なるべく安くといいつつも、200円程度の費用が掛かってしまったので、あまり安い練習ではないです…。

 それから、実装する基板は、aitendoの『ピッチ変換(0.5) [QFN(0.5)32P-DIP36-5x5]』です。

 利用したはんだごては、前に購入したgootのRX-802です。ハンダは0.6mmのを使ってます。

実装結果

まずは写真で。今のところまだATTiny48は実装していないのですが、その他の2つはこんな感じになりました。
XC2C32Aのハンダ付け俯瞰。5ピンを付けるのに失敗してしまいました。

XC2C32Aのハンダ付け俯瞰(その2)

STM8S103のハンダ付け俯瞰

…そうですね、XC2C32は5ピンを付けるのに失敗してしまいました。1-8ピンのある辺が、少しズレてしまったのです。最初、2ピン程度を仮止めしていたのですが、どうも位置調整に失敗してしまいました。ズラせないか試行錯誤しているうちに、5ピンのランドが熱で剥がれてしまったようです。
(幸い、5ピンはただのI/Oなので問題なかったですが…)

 逆に、STM8S103の方は、自分で言うのもなんですが、まあまあまともに出来たような気がします。半田のフィレットがなんとか確認できる、ような。

 STM8S103の様なパッケージは、『ダイシングタイプ』と言うようで、XC2C32Aのような『金型抜き打ちタイプ』に比べると、些か付けるのが難しいように見えます。しかし、実際やってみると、肉眼だとほぼ見えないような側面パッドにも、半田はちゃんと乗ってくれたようです。(さすがに側面パッド無しだと難しいでしょう…)

他に得られたこと :

  • 外側リードが銅なら(STM8S103)、位置が正しく揃ってる時は、ランドに銅色が映り込むから分かりやすかったです。フィレットが形成されているかも、銅色が見えなくなったかどうかで、一応判断できる気がします。
  • ハンダ付け自体は割と簡単でした。パッドが小さいので、TQFPパッケージの様に、ハンダがあまりブリッジはしませんでした。なので、コテに付いたハンダで、端から順に撫でていくようにするだけでどうにかなりました。(ただ、一度だけだと付いてないときもしばしば。)
  • 逆に、ハンダ付けの確認は少し大変。小さいので、肉眼ではあまり見えませんでした。今回のように近接撮影するか、虫眼鏡などを通して見るのが良さそうです。
  • 位置決めの方法ですが、3辺を確認しながらセロテープで固定→そのうち1辺をハンダ付け→セロテープを剥がして残りの1辺を確認、くらいしか思いつきませんでした…。


 さて、今回は底面パッドのハンダ付けが出来ませんでした。横を付けてからだと、底の部分にはコテは入りませんからね…。予めランドにはんだを盛ろうとしましたが、そうするとICが浮き上がってしまい、側面パッドが付けられなくなってしまいました。なので、viaを通じて、裏面からどうにかしないといけないようです。

 また、一度位置決めをして付けてしまうと、その後の調節は無理そうです。頑張ってリフローするか、クリップなどで周辺を囲い、一気に加熱などの方法が必要なようです。


けつろん

ということで、位置決めさえしっかりすれば、一応QFNパッケージも付けられなくないことが分かりました。動作確認はしてないですが…。しかし、手ハンダで付けるのが難しそうなQFNパッケージというのもあります。以下の様なものです。

  • 側面パッドが無いQFNパッケージ
  • 金型打ち抜きタイプのうち、ダイパッドの露出があるもの
  • 小さなパッケージで、底面パッドを付けるのに十分な大きさのViaが置けないほど小さいもの


脚注

QFNについては、以下のPDF文献などが参考になりました。
Renesas, "QFN 実装マニュアル", http://documentation.renesas.com/doc/products/others/r50zz0005jj0150_pkg_qfn.pdf

 写真は全て、OLYMPUSのTG-2で撮影しました。アウトドア用に購入したのですけど、マクロも強くて、その手の用途にも重宝しています。
Read more →

2015/05/14

[雑記]Mac OS YosemiteへのTeX環境の導入(含TeXStudio)

,
 MacへのTeXの導入手順です。

 基本的にはMacTeXをインストールすれば、それで終了なのですが、統合環境であるTeXStudioの導入もしてみました。

2015.12.07 追記 : El Capitanではこの方法が参考になるかわかりません。自分はSIP機能が追加されたために、一旦アンインストールしたあとhomebrewで入れ直したりしました。多分他の方が詳しい解説をなさっていると思うので、そちらを参考にすることをお勧めします。

1.1 MacTeXのインストール


MacTeXは、MacでTeXを利用するために必要なパッケージがまとめられているものです。
MacTeXのインストール・設定方法については、以下のサイトが詳しいです。

・Mac - TeX Wiki http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac#f5466652
・Mac OS X にTeXをインストールする初心者向けメモ - 教育社会学の勉強・備忘録 http://tandoori.hatenablog.com/entry/20130802/1375451791

とりあえず、上記のサイトに書かれている通りに、MacTeXを導入しました。
※MacTeXをGoogle ChromeでDLすると、パッケージがインストール出来ないことがあります。私も遭遇してしまいました。Safariを利用しましょう。
(Homebrewでもインストールすることができるようです。)
ChromeでDLしたところ、このような画面となりインストールできませんでした。

1.2 TeX Live Utilityを利用してアップデート


MacTeXのインストールが完了したら、まずは、TeX Live Utilityを起動して、一度全てのパッケージにアップデートを掛けました。

1.3 TeXShopで動作の確認


次に、TeXShopで簡単なひな形をコンパイルして表示させてみて、ちゃんとインストールができたか確認しました。
TeXShopの設定も上のサイトに従いました。

テストファイルには、以下のサイトの”sampleotf.tex"を利用しました。
MacTeX + TeXShop で日本語 http://www.clas.kitasato-u.ac.jp/~fujiwara/MacTeX/

※ただし、最初はFont family `JY1+mc' unknown.というエラーが出てLaTeXが停止してしまいました。
調べたところ、\documentclass[uplatex]{jsarticle}と変更すればよいみたいです。
参考 : LaTeX のエラーメッセージ - TeX Wiki http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?LaTeX%20%E3%81%AE%E3%82%A8%E3%83%A9%E3%83%BC%E3%83%A1%E3%83%83%E3%82%BB%E3%83%BC%E3%82%B8


2.1 TeXStudioの導入


さて、ここまでで、一応最低限のTeX環境が整ったことになります。
しかし、私はTeXShopがあまり好きではなく、もうちょっと使いやすい統合開発環境が利用したかったので、TeXStudioを入れることにしました。

TeXStudioは、公式サイトからダウンロードすることが出来ます。

2.2 コンパイラの設定


TeXstudio/設定/OS X - TeX Wiki http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?cmd=read&page=TeXstudio%2F%E8%A8%AD%E5%AE%9A%2FOS%20X

さて、.texファイルのコンパイル方法ですが、どうも今は下の2つの方法があるみたいです。
1)platex(.dvi生成)→dvipdfmx(.pdf生成)
2)ptex2pdf(.pdf生成)
で、多分後者のほうが新しいです。前者の方は、[DVI->PDFチェーン]と呼ばれるもの。後者は[コンパイル&表示]。

これらを利用するため、上のWikiに書かれている通りに、[環境設定]→[コマンド]を変更します。


それで、このdvipdfmxなんですが、デフォルトのTeXStudioのパス設定
[DviPdf]→[/usr/local/bin/dvipdfmx %.dvi]にはありません(!)

私の環境では、ターミナルからwhichコマンドで検索したところ、dvipdfmxは/usr/texbin/以下にあるようです。なので、TeXStudioでもこのパスに変更しました。
$ which dvipdfmx
/usr/texbin/dvipdfmx

2.3 ptex2pdfの設定


ptex2pdfとは、luatexを使った新しいコンパイルチェーンだそうです。
ptex2pdf - TeX Wiki http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?ptex2pdf

以下のページに、この新しいツールについての説明がよくまとまっています。
TeXの最近の動向 - MyTeXpert http://mytexpert.osdn.jp/index.php?TeX%A4%CE%BA%C7%B6%E1%A4%CE%C6%B0%B8%FE

TeXStudioでptex2pdfを利用する場合は、[環境設定]で、
[コマンド]→[PdfLaTeX]を、[/usr/texbin/ptex2pdf -l -u %.tex]。
[ビルド]→[ビルド&表示]を、[コンパイル&表示]
[ビルド]→[既定のコンパイラ]を、[PdfLaTeX]
にします。

コンパイルには、-l -uオプションが必要みたいです(以下を参考に)。そうしないと、Font family 'JY2+mc’ unknown.などとエラーを吐かれてしまいました。

ちゃんとコンパイルが通るかどうかは、単純にターミナルから
$ptex2pdf -l -u ***.tex
としても確かめられます。ちなみに、この方がログが見やすいです(TeXStudioの設定を間違えたのか、どうもログがTeXStudioのコンソールに表示されない…)

2014/11/16のまとめ - Wandering Life http://nowondaringnolife.hatenablog.com/entry/2014/11/16/231159

2.4 PATHを通す必要がある場合


ここからは、TeXStudioで遭遇した問題の解決方法を書いておきます。大体、上に記したWikiに書かれていますが…一応。

ptex2pdfを利用した際に、"env: texlua: No such file or directory"となる場合は、/usr/texbinか何かへPATHを通す必要があるようです。
Wikiには、~/.bash_profileにexport ~を追加する例が示されています。
texluaが見つからない場合のメッセージ


ptex2pdfは、途中で問題があった時に「どうする?」と対話的に聞いてくるのですが、IDEの今の設定だとそれが分からない。結果的に、ユーザーはそれをしないからハングアップしたと思うし、ptex2pdfは返事がないから待ち続けるという、お互いに不幸な構図に陥ってる…。

2.5 TeXStudioのPDFビューワで、日本語フォントが表示されない問題


そのまんまなんですけど、とにかく表示されないということがありました。Finderのプレビューなどで確認すると、ちゃんと日本語が確認できるのですが…
以下のサイトに倣い、ターミナルから
$brew install poppler
としたところ、直りました。

TeXstudioの組み込みPDFビューアで日本語を表示させる(Mac): https://hayate.me/archives/31

2.6 TeXStudioのエディタで、日本語が重なってしまう問題


MBAだと発生しなかったのですが、iMacだと発生しました。なんでだろう。
[環境設定]→左下の[高度なオプションの表示]をON→[エディタ設定]→[回避策の最適なディスプレイオプションの自動選択]をOFF→[描画モード]をQtに。
こんな感じで日本語が重なって潰れてしまいます。
設定をこうします。

2.7 Skimの導入


TeXStudioでは、組み込みPDFビューアとして、外部ビューアも利用できます。Mac向けPDFビューアのうち、それなりに人気があるものの一つがSkim。だそうです。

3 その他


他に参考にしたサイトを挙げておきます。
luatex でPDFを作れるようになるまで - lol b http://sqr.hateblo.jp/entry/2014/04/20/151523




以下は、ヒラギノを利用するようにした時のログです。(例のコマンド群をまとめてconfigure_tex_hiragino.shに書いておきました。)

$ sudo sh configure_tex_hiragino.sh
Password:
mktexlsr: Updating /usr/local/texlive/2014/texmf-config/ls-R...
mktexlsr: Updating /usr/local/texlive/2014/texmf-dist/ls-R...
mktexlsr: Updating /usr/local/texlive/2014/texmf-var/ls-R...
mktexlsr: Updating /usr/local/texlive/texmf-local/ls-R...
mktexlsr: Done.
updmap: resetting $HOME value (was /Users/********) to root's actual home (/var/root).
updmap is using the following updmap.cfg files (in precedence order):
  /usr/local/texlive/2014/texmf-dist/web2c/updmap.cfg
updmap is using the following updmap.cfg file for writing changes:
  /usr/local/texlive/2014/texmf-config/web2c/updmap.cfg
Creating new config file /usr/local/texlive/2014/texmf-config/web2c/updmap.cfg
dvips output dir: "/usr/local/texlive/2014/texmf-var/fonts/map/dvips/updmap"
pdftex output dir: "/usr/local/texlive/2014/texmf-var/fonts/map/pdftex/updmap"
dvipdfmx output dir: "/usr/local/texlive/2014/texmf-var/fonts/map/dvipdfmx/updmap"

updmap is creating new map files
using the following configuration:
  LW35 font names                  : URWkb (/usr/local/texlive/2014/texmf-dist/web2c/updmap.cfg)
  prefer outlines                  : true (/usr/local/texlive/2014/texmf-dist/web2c/updmap.cfg)
  texhash enabled                  : true
  download standard fonts (dvips)  : true (/usr/local/texlive/2014/texmf-dist/web2c/updmap.cfg)
  download standard fonts (pdftex) : true (/usr/local/texlive/2014/texmf-dist/web2c/updmap.cfg)
  kanjiEmbed replacement string    : hiragino (/usr/local/texlive/2014/texmf-config/web2c/updmap.cfg)
  kanjiVariant replacement string  :  (default)
  create a mapfile for pxdvi       : false (default)

Scanning for LW35 support files  [  3 files]
Scanning for MixedMap entries    [ 44 files]
Scanning for KanjiMap entries    [  6 files]
Scanning for Map entries         [225 files]

Generating output for dvipdfmx...
Generating output for ps2pk...
Generating output for dvips...
Generating output for pdftex...

Files generated:
  /usr/local/texlive/2014/texmf-var/fonts/map/dvips/updmap:
       15796 2015-05-13 14:02:05 builtin35.map
       21269 2015-05-13 14:02:05 download35.map
     1190839 2015-05-13 14:02:06 psfonts_pk.map
     1451472 2015-05-13 14:02:06 psfonts_t1.map
     1445646 2015-05-13 14:02:05 ps2pk.map
          14 2015-05-13 14:02:06 psfonts.map -> psfonts_t1.map
  /usr/local/texlive/2014/texmf-var/fonts/map/pdftex/updmap:
     1445653 2015-05-13 14:02:06 pdftex_dl14.map
     1443988 2015-05-13 14:02:06 pdftex_ndl14.map
          15 2015-05-13 14:02:06 pdftex.map -> pdftex_dl14.map
  /usr/local/texlive/2014/texmf-var/fonts/map/dvipdfmx/updmap:
        6588 2015-05-13 14:02:05 kanjix.map

Transcript written on "/usr/local/texlive/2014/texmf-var/web2c/updmap.log".
updmap: Updating ls-R files.
Read more →

2015/02/22

[電子工作]Nios Ⅱ/eをDE0でやっと動かした

,

 2年前とかに買ったDE0ですが、Timestampの不一致とやらでNiosを動作させることができず、ずっと放置していました。最近またNios動かせるようになりたいと思い、リベンジしてみました。

Quartus Ⅱ v14.0 Web EditionはCyclone Ⅲに対応していない

まずはこっから。本当に対応してませんでした。幾らなんでもサポート切るの早すぎじゃないですか…。DE0に乗っているCyclone Ⅲを使いたかったので、v13.0を利用しました。

Niosについて

Nios Ⅱ/eをDE0で利用する方法については、Sim's blogさんの以下の2つの記事を参考にしました。

NIOSを使ってみました(1) - Sim's blog http://blog.goo.ne.jp/sim00/e/8e1fc436d1e29a6decc20f8256adb914
NIOSを使ってみました(2) - Sim's blog http://blog.goo.ne.jp/sim00/e/35fbcf1fc1bfe67255e371c1ca2c770f

SimさんはQuartus Ⅱ v9.0で行っていますが、私はv13.0を利用したので、ところどころ違うところがありました。例えば、

  • sysid_0をsysidにrenameしませんでした(デフォルトでsysid_qsys_0という名前だった)。
  • module同士のconnection(配線)は手動で繋ぎました。(繋がないと、下に××モジュールをAvalon-MMに繋がないとダメだよなどととエラーが出てしまいます。)
  • addressは、最初はSimさんの例と同じように配置したのですが、結局[System]→[Assign Base Address]で配置しました。

 で、最終的にこのような構成になりました。IRQに関しては全く触っていません(なのでjtag_uart_0のIRQが未配線であるWarningが出てる)。
今回作ったNios周りの図
本来であれば、以下の公式チュートリアルをまず初めにやるべきなのかなあと思いましたまる

Nios II Hardware Development Tutorial
http://www.altera.com/literature/tt/tt_nios2_hardware_tutorial.pdf

Qsys内で間違えてNewしてしまったとき

最初projectを作成したあと、Nios部分を作りこむためにQsysを起動しますよね?ここで、最初からclk_0があるので、変なものを開いたかと思って[File]→[New]してしまうと、projectと関連のないデザインを作ってしまうことになります。
 これを放置したままでいると、main.vhdでは生成したnios componentを使おうとしているのに、関連性がないからQuartusはniosがどれだか分からないっていう状況になってしまいます。
 こういったときは、普通にNiosコア周りを[Generate]まで行い、その後Quartusの方でprojectに、Qsysが生成したNios関連のファイルをポイポイっと追加すると、QuartusはNiosがどれのことか理解してくれます。

.pofと.sof、どっち?

FPGAのAssemblerまでが正常に終了すると、<project root dir>/output_files以下に、生成物が保存されています。Xilinxだと.bitファイルなのですが、Alteraの場合、.pofと.sofという2つのファイルが出来ていました。どっちがどっちなんでしょう?
.pofか.sofか

新人エンジニアの赤面ブログ 『プログラミング?コンフィギュレーション?』 http://bit.ly/1L4Xu1X
Generating Secondary Programming Files http://bit.ly/1L4XSO8

上のリンク先などを参照するに、
.pof → Programmer Object File (EEPROMなど向け)
.sof → SRAM Object File (FPGAのSRAM向け)
のようです。なるほど、名前が違うんですね。

Deviceはどっち?

Programmerで、DE0に書き込もうとすると、JTAGスキャンした後に"Encounter devices with shared JTAG ID for device 1. Please select your device."と言われたりします。
どっち?
どうやらEP3C16とEP4CE15のJTAG IDが0x020F20DDで一緒らしいです[1][2]。DE0に載っているのはEP3C16なので、そっちを選びます。慣れないツールで英文見て、一瞬フリーズしてしまいました…。

その他エラーメッセージ諸々

QsysでのAvalonバス配線忘れのエラー

"**** must be connected to an Avalon-MM master"
多分スレーブのAvalon-MMポートが、どこのAvalon-MM Masterポートにも接続されていない。(そのまんま)
sysid_qsys_0のAvalon-MMがどこにも接続されていない。
例えば上の図だと、Connectionsを見ると、sysid_qsys_0のcontrol_slaveが、Avalon-MMバスのどこにも繋がっていません。なので、どっからも制御されないことになってしまいます。よって、control_slaveの白丸を2つクリックし、黒にすると接続したことになり、Warningが消えて上の図のようになります。
 まあ、CPUと周辺ペリフェラルは全てAvalonバスで繋ぐのがNiosらしいので、繋がってなかったらおかしいですよね。

Qsysでのアドレス衝突時のエラー

Error: System.nios2_qsys_0.data_master: onchip_memory2_0.s1 cannot be at 0x11000 (0x10000 or 0x18000 are acceptable)
Error: System.nios2_qsys_0.data_master: sysid_qsys_0.control_slave (0x11010..0x11017) overlaps onchip_memory2_0.s1 (0x11000..0x18fff)
"cannot be at <addr>"というエラーが出た時のQsysの画面
 これは、各ペリフェラルごとにアドレスを決めますが、それが衝突(重なって配置されてしまっている)していることを示すエラーです。これを解決するには、addressを手動修正でもいいですし、[System]→[Assign Base Address]を選ぶと、Qsysが全て自動で配置してくれるみたいです。

Qsysでのclk/resetの配線忘れエラー

Error: System.nios2_qsys_0: nios2_qsys_0.clk must be connected to a clock output
Error: System.nios2_qsys_0: nios2_qsys_0.reset_n must be connected to a reset source
 上のAvalon-MMバスと同様に、各モジュールにclkとresetを接続する必要があるようです。Qsysを立ち上げた時から存在していたclk_0は、clkとresetのバッファのようなもので、これらの出力を各ペリフェラルなどに接続すれば動きはするみたいです。

.bspのエラー

make[1]: *** [public.mk] Error 1
make: *** [../nios_software_test_2_bsp/-recurs-make-lib] Error 2

 Qsysでaddressなどを変更したあと、Nios IDEでBuildしようとしたら、このようなエラーが出てしまいました。どうやら、変更した部分がHardware Support Packageかなにかに反映されていないようです…?以下のサイトを参考にしたところ解決しました。

■第1部 第2章|組込みのこと http://ameblo.jp/umigasuki2/entry-11559007850.html

方法としては、
  • Nios IDEで、プロジェクトを選択した後、[Nios II]→[BSP Editor]
  • BSP Editorが起動したら、[File]→[Open]を選択し、Hardware Support Packageのプロジェクト(<project name>_bsp)のフォルダにある.bspファイルを選んで開く。
  • とりあえず右下の[Generate]を押す。
  • プロジェクトをリビルドする。
とやったところ、なんとかまた動作するようになりました。でもよく分からない…。この作業をする前後でpublic.mkに変更が加えられたか確認していないけれど、baseaddrか何かが変わったのかな。

BSP Editor起動直後。このままExitしてはだめ、[File]→[Open]で.bspファイルを開く。

BSP Editorで.bspを開いた時の画面。Linkerのaddressが変わるのかな?

SynopsysについてのCritical Warning

Critical Warning (332012): Synopsys Design Constraints File file not found: 'main.sdc'. A Synopsys Design Constraints File is required by the TimeQuest Timing Analyzer to get proper timing constraints. Without it, the Compiler will not properly optimize the design.

Critical Warning (332168): The following clock transfers have no clock uncertainty assignment. For more accurate results, apply clock uncertainty assignments or use the derive_clock_uncertainty command.

最小限のプロジェクトを作成した後、Implementationまで行おうとすると、こんなCritical Warningが出てきました。が、その割には動きます。なんでだ…

CygwinのWarning

0 [main] sh 7836 find_fast_cwd: WARNING: Couldn't compute FAST_CWD pointer.  Please report this problem to the public mailing list cygwin@cygwin.com

Nios IDEでprojectをbuildしている時に、Consoleに大量に流れていくエラーです。どうやら内部で回っているらしいcygwinの問題のようで、スルーしていてもbuild自体には問題なさそうです。

成功した場合どうなる?

-----------------------------------------------------------
Using cable "USB-Blaster [USB-0]", device 1, instance 0x00
Processor is already paused
Reading System ID at address 0x00001000: verified
Initializing CPU cache (if present)
OK

Downloading 00008000 ( 0%)
Downloaded 1KB in 0.0s      

Verifying 00008000 ( 0%)
Verified OK                      
Starting processor at address 0x00008020
-----------------------------------------------------------
 これは[Run As]→[Nios ⅡHardware]に成功した時のConsoleです。System IDがちゃんと認識されました。
 Eclipseでdebugすると、以下のようになります。どうでもいいんですけど、EclipseはRun時に流れるConsoleのメッセージがすぐ消えてしまって、なかなか追えないのがイライラします…。
EclipseでDebugしてるときのスクリーンショット

結論

思ってたよりはつまらずに出来ました。
 ただ、実は、Niosでやりたいことの一つが、TCP/IPを利用した通信で、どうもNiosで無償で利用できるコアにEthernet(RMIIとか)が無いようなんです。ジーザス。今はSPI通信経由でCC3300やENC28J60を利用しようかと考えていますが…ライブラリの移植にも手間が掛かりそうです。
 うーん…。
 


参考文献
[1] "Cyclone IV Device Handbook", Altera Corporation, Volume 1, December 2013, p.10-4, http://www.altera.com/literature/hb/cyclone-iv/cyiv-51010.pdf
[2] "Cyclone III Device Handbook", Altera Corporation, Volume 1,  June 2009, p.12-2, http://www.altera.com/literature/hb/cyc3/cyc3_ciii51012.pdf
[3] "Nios II プロセッサ: 世界で最も汎用性に優れたエンベデッド・プロセッサ", http://www.altera.co.jp/devices/processor/nios2/ni2-index.html, 2015/02/22閲覧
 XilinxのFPGA埋め込みコア"MicroBlaze"で利用できる無償IPコアよりは、数は多いと思うんですけれど、Ethernetはないんですよね…
Read more →

2015/02/02

[電子工作]紙を検知してソレノイドを動かす回路を作った

,
 なんて書けばいいんだろう、授業用に基板を作ったけど、具体的には「紙があるときだけ、ソレノイドを動かす回路」としか言えない。ま、とにかく作ったので書いておきます。


 概要


紙があるときだけ、ソレノイドを動かす回路です。ほんとそれだけです。以下にブロック図を示します。
今回の回路のブロック図
紙の検出には、秋月で販売されているフォトリフレクタ、LBR-127HDを使用しました。選定理由は特になく、たまたま最初に選んだのがこれで、試しに紙をかざしてみたらちゃんと動作したのでこれを使っています。

 で、フォトリフレクタは紙すれすれの場所に無いといけないので、場所の制約からメイン基板とは離れてしまいます。なので、センサーだけを載せるミニ基板を作りました。上のブロック図で"sub_sensor_pcb.sch/brd"となっているのがそうで、12mm × 35mm程度の大きさです。

 フォトリフレクタとメイン基板までは、1mの3芯銅線(オヤイデの人に選んでもらった極東電線製細物多芯ケーブル VVC 3芯 (7/0.18 × 3芯))で接続しています。ここのノイズ対策のために、メイン基板側で1 Logic ICのバッファーを入れています。また、フォトリフレクタのフォトトランジスタがON時に完全に0Vにはならず、C-E間飽和電圧Vce(sat) = 0.4Vだけ浮いてしまうので(これでもLVCMOS的にはLowですが)、それをLowレベルまで下げる役割も兼ねています。

 実際に信号に応じてソレノイドの制御信号を生成するのは、STM32 Nucleoボードで行っています。
 最初はLPC810で制御をしていたのですが、「立ち上がり/下がり割り込みから、一定時間遅れてピンを反転させる」というロジックを、自分の力ではどうしてもLPC810で実現できなかったので、書くのが簡単そうなmbed SDKが使え、なおかつ安い(\1,500)Nucleoを選んだ経緯があります。
 mbed SDKはInterruptInクラスで立ち上がり/立ち下がり時の割込みハンドラが扱えるので、これを利用してセンサーの出力変化時にFETの出力を変えています。

 ソレノイドの駆動にはFETを利用しています。ソレノイドは、0.1A~0.2A(実測)とそこそこの電流が流れるので、ON抵抗が低そうなInternational RectifierのHEXFET、IRLTS6342を利用しました。


回路


センサー基板の回路図

メイン基板の回路図


センサー基板について


 フォトリフレクタの抵抗の値については、以下のように決めました。
赤外線LEDの順方向電圧Vf : 1.2V typ. (データシートのElectrical Specificationsより)
赤外線LEDに流すべき電流If : 20mA?(データシートのElectrical Specificationsの、Conditionsが大体そうだから)
よって、R1 = (Vcc - Vf) / If = (3.3 - 1.2) / 0.02 = 105(Ω)。
まあ、100ΩでもIf = 21mAとなり、絶対定格60mAの1/3なので、安全率3だし壊れはしないでしょう…ということで、100Ω。

 フォトトランジスタの抵抗R2は10kΩにしましたが、これは最初プルアップと思い込んで、いつもの様に10kΩにしていたら動いてしまったので、実験で決めた値になります。ちゃんと計算するなら、ON時に流す電流、データシートのグラフにある過渡応答特性などから総合的に判断すべきなんでしょう…。
その場合、R2 = (Vcc - Vce(sat)) / Ic = (3.3 - 0.4) / 0.002 = 1450(Ω)
あれ、結構低いですね、まあいいや…

 LED1は、電源がここまでは来ているよという確認の為に設けています。そうしないと、テスターでいちいち測ることになって面倒ですので。

 D1は、コネクタの逆挿入防止です。といってもXHコネクタは1方向しか入りませんが。ブレッドボード向けジャンパワイヤなどを利用した時のためと、安心のために一応入れています。ダイオードの選定理由は特に無し。面実装で小型で、Eagleのライブラリにあったから、かな。

 FUSE1は、万が一この基板がショートしたりして過大電流が流れた時に、それはどう考えても故障なので、せめて他の基板は動いてくれよと、この基板だけ切り離すためのポリスイッチです。電源電圧も低いですし、消費電流は100mAにも満たないでしょうから(これは計算できるはず)、1608サイズの小さなポリスイッチを利用しています。


メイン基板について


 最初はチャタリングが発生するかと思い、センサーからの入力に対してLPF(積分回路)を入れようかと思っていました。が、冷静に考えるとセンサーってスイッチではないですし、実際にオシロスコープで波形を見てみてもチャタリングなんてなかったので、結局R4 = 0Ω、C2 = NI(Not Inserted, 未実装)になっています。

 IC1は、波形整形のためのバッファーICです。この基板では、バッファーICはここにしか使用しないので、1ゲートロジックICであるTexas InstrumentsのSN74LVC1G07を使用しています。、後述の理由から、74LVC1G34(TI, NXP)を利用するか、74LVC1G08(2-input AND)か74LVC1G32(2-input OR)の2つの入力を接続してバッファーとして使うなどした方がいいようです。
 余談ですけど、1ゲートロジックは面実装ばかりですが、入力電圧範囲・電源電圧範囲が広いことが多く、基板を作る回路の時には便利ですね。あまり秋葉原とかには売っていませんけど。

 D1は、万が一コネクタに過大電圧(静電気とか?)が加えられた場合の保護回路です。本当に動くのかな、まだ試験したことないです。「ヤバい状況下で、保護回路が本当にちゃんと保護してくれるのか?」というのは気になる話ですので、今度試してみたいです。

 R3は、コネクタに何も繋がっていない場合、Logic ICの入力が不定にならないようにするための、プルアップ抵抗です。値は特に考えず10kΩ。

 メイン基板のJ3は、ここからNucleoに対してメイン電源を供給するために付けたコネクタです。でも、Nucleoを外部電源で動かすためには、Nucleo上のジャンパーの切り替えが必要だったので、まだ浸かってなかったりします。JP1は、この基板上で外部電源を利用するかどうか切り替えるジャンパーです。


 続いて、ソレノイド駆動回路に話を移します。

 FET(Q1、X1)は、ソレノイドのON/OFFを制御する素子です。モータードライバーなどのスイッチ素子は、わりかし過電流などで破壊されやすいので、交換を容易にするために手半田しやすい2SK4017用パターンも用意することにしました。初期では特性の良いQ1を実装しておき、もし壊れた場合は、以後X1にします。
 Q1を選定した理由は、Digikeyでよさそげなのを探していたところ出てきたことと、IRのFETは優秀そうだっていうイメージからです(この会社の主力製品ですよね)。

 R15はFET入力に対するダンピング抵抗です。そんな反射で困ったことはないけれど、半ばおまじないのように入れています、R16は、万が一Nucleo基板が挿入されていなかった場合に、FETの入力が不定とならないようにするための、プルダウン抵抗です。FETがそんな状況下でONされては困るので、プルダウンです。
 

パターン

センサー基板のパターン図
メイン基板のパターン図
  

 センサー基板は、ネジでちゃんと固定できるように、M3.2の穴を2つ開けてあります(1つだと回転しそう)。実際にはM3のネジを使いますけど、なんか余裕のない穴径は嵌まらなくなりそうで怖いので、+0.2mmして3.2にしています。
 で、ぶっちゃけるとこれらが基板の半分以上を占めています。やはり機構部品は大きいですね、電子部品のようにもっと小型化しないかなあとよく思ってしまいます。回路の部品は、なるべくセンサとコネクタの隙間に詰めるようにしました。
 もう一つ気をつけることとして、フォトリフレクタとXHコネクタは逆向きに実装することがあります。フォトリフレクタは紙方向に向きますが、その分コネクタから線を取り出すスペースは逆の面にしかありませんので。


 メイン基板は、なるべくバッファーICを、信号コネクタの直近に配置するようにしました。そうすれば、基板内はちゃんとした信号になるといいな(願望)。
 ソレノイドは、それなりに電流が流れるということで、配線を太くし、裏面のベタアースはしないようにしています(なんでだっけ)。ダイオードは、ソレノイドの直近に配置するようにしました。
 
 FETは、2つのデバイスのS、G、Dが全て共通なので、TO-251AAの2SK2417と、TSOP-6のIRLTS6342PbFをうまい具合に配置しないといけません。で、圧倒的にTO-251AAが大きいので、その間に何とか収まるように配置してみました。IRLTS6342PbFはDが4ピン分ありますので、それを2SK4017のDに繋がるポリゴン上に乗るよう、大まかに位置決めをしています。

 また、ソレノイドに流れる電流は、そのまま外部電源のGNDに帰って欲しいので、FETのSと外部電源につながるコネクタJ2のGNDをポリゴンで囲い、外のGNDとは小さく繋げています。

 そうそう、ここに書かれているArduinoのピン番号のシルク、基板を作ったら書かれていませんでした。SparkFun-Boards.lbrの なんですけど、番号とかは全てtPlace(21)に書かれてました。あれ、変だ… ガーバーデータを確かめないと、、


実際に制作してみて


 この基板も、当然のように最初動きませんでした。

 センサー基板からの出力はちゃんと出ているのをテスターで確認できたので、メイン基板の信号の流れを追っていくと、ロジックICの出力で信号が途絶えていました。
 このバッファIC、最初はLVCMOS出力かと思ってたのですが、よくよくデータシートを見たらOpen-Drainって書いてありました。そりゃ動きませんね、出力にVccへのプルアップ抵抗を付けてみたのですが、それでもまだ動きませんでした。えーなんでと思いつつデータシートを更に読むと、p.11のLayout Exampleで、NCピンをfloatにしてないのを見つけました。よく説明を読むと、GNDかVccに配線するよう書かれていました。で、その通りにジャンパを飛ばしてみたら案の定動きました。たとえ5ピンのロジックICだとしても、油断せずにデータシートはよく読めということですね…。

 それ以外にバグはなく、FETもちゃんと動いてくれました。

 今回の教訓

  • 例えロジックICでも、5ピンしかなくても、ちゃんとデータシートは読む。
  • NCピンの処遇はちゃんと確認する。
  • ICのOpen-Drain出力には気をつける。
Read more →

2015/01/29

[電子工作]+5V、+12V電源の作成

,
 ひねりがないタイトルですね、電源を作ったので、その資料を貼り付けておきます。
こんなものを作りました。(Picasaで明るさ編集したらちょっと明るすぎだ)

作ったもの

大学の講義でなにかモノを作らないといけなくなってしまい、その時+5V、+12Vの電源がモーターように必要になったので、電源を作りました。
 締切が設定されていて、あまり時間に余裕がなかったので、専用ICを利用しデータシートの回路そのままに作りました。

仕様

  • 入力電圧 : AC 4.5V ~ 9V
  • 出力電圧 : DC +5V、+12V 各4系統
  • 変換方式 : DC/DCコンバータ(専用ICを利用)
  • 基板のサイズ : 62.5mm × 51.5mm(実測)
  • かかった値段 : ひみつ

大まかな設計


 簡易電源を作ろうとした場合、まず「三端子レギュレータ」か「DC/DCコンバータ」かを考えました。

 講義ではトランス(S.E.LのSP-905)が部品として提供されていたので、電源の大本はコンセントからのAC100Vとしました。次に、トランスの2次側規格が4.5V~9V出力だったので、出力電圧との差が大きいことから、損失を少なくするためにDC/DCコンバータを使用することにしました。
 また、アナログ回路の実験などにも利用できるよう、DC/DCコンバータの出力に更にLDOを利用することで、ノイズを少なくすることを狙っています。


 次にICの選定です。もっとスタンダードな品がある気がしてならないのですが、Linear Technologyのサイトで見つけたものを利用しました。
 実際に利用したICは、+5V生成がLT3502A、+12V生成がLT1935です。

 LT3502Aは、降圧型のDC/DCコンバータICです。Linear Technologyのサイトで、DC/DCコンバータICから今回の条件に当てはまるものを絞っていったところ、小ピンで残ったのがこれでした。
 ありがちな降圧型DC/DCコンバータICですが、このICは電源の入力範囲が広いので使うことが出来ました。よくありがちな入力範囲2.5V~5.5Vのものは、今回は使用できませんので…。

 LT3502Aの出力には、TPS79650を付けました。とてもノイズが小さく(40μVとか)、またドロップする電圧も低いので、今回にはうってつけでした。
 これを選んだ理由は、いつも使ってるTPS736xxシリーズに+5V出力品がなく、同じTIで検索してたら出てきたから、というだけです。

 LT1935は、昇圧型DC/DCコンバータで、なるべく部品数が少なく、ピン数も少なく、小さなパッケージのものを探していたら見つけたものです。SOT-23-5ですので小型ですし、少ない外付け部品で600mAも出力が取れるのでいいICですね(もっといいのあるかも/高いけど)。

 確か、どちらかのICのデータシートが指定するコイルが見つからなかったので、(ついでに小型化も狙って、)同等スペックのものを利用した気がします。


電源インジゲータには2色LEDを付けています。これは完全に自分の好みですね。

 出力は、ピンヘッダが2つと、XHコネクタで2つ出すようにしています。やはり多いほうが、色んなボードに給電するときに便利そうなので、こうしました。

 回路図は以下です。
電源の回路図

 細かい部品に話を移します。


 最初のコンデンサですが、リプル量を抑えるべく計算したところ、この容量になってしまいました(計算式として何を使ったのかまったく覚えていない…)。また、トランスの出力が最大AC9V入力ですので、耐圧もそれなりのものを利用しないといけません。
 本来ならばこのCも表面実装にしたかったのですが、表面実装品はDigikeyだと200円~450円程度とかなり割高に感じられたので、アキシャル部品を利用しています。
 秋葉原で探してみたのですが、マザーボード用6.3V耐圧のものは沢山ありましたが、ちょうど欲しいスペックのものが見つかりませんでした。結局、今は16V1800μFのを載せています。

結論 : Digikeyで全部買おう

 
 ブリッジダイオードも「ライブラリにあったから」という理由だけで選んでいます。ちなみにこのB10S、Digikeyで検索すると似たような商品がいっぱい出てくると思います。全部ピンコンパチだとは思っているんですが(未確認)、パッケージが少しだけ違うものがあ…った気がしたんですが、気のせいみたいです。
 
 自分は、「まあ合わなかったら空中配線しちゃお」みたいなノリでMB10Sを買った気がします。普通にパターンにピッタリと合いました。要らぬ心配でしたね…。
 


 そうそう、細かいことなのですが、コネクタのGNDのピンは全て同じ場所にするのも重要ですね。この基板は、他の基板と接続することを前提に作っているので、基板ごとにGNDの場所が違うと、間違った接続をするかもしれません。例えば、あるコネクタは"1 : +5V、2 : GND"で、別のコネクタは"1 : GND、2 : +5V"ですと、この2つを繋いだら負電圧がかかってしまいます。こういったことを無くすために、コネクタの配置は常に意識しておくべきだなあと感じました。



 パターン図は以下です。このパターン図ですと、LT3502Aの1ピン(#SHDN)の配線がunroutedのままになっています。バグですので隣の0Ω抵抗と繋いでください。
電源のパターン図

 毎回パターンを配置する時に思うのですが、ネジ穴とコネクタの位置は最初に決めるべきですね。これらの部品はかなり巨大なので、後から配置しようとすると、場所がないとかやりくりが大変だという事になりやすいです。気をつけなきゃ。


 あまりちゃんとした論理的な理由は言えないのですが、整流回路の部分はベタグラウンドじゃなくしました。本当に、何か効果があるのかも分からないです。
 また、+12Vと+5Vでは、GNDをなるべく別にしています。これは、どちらか片方だけが大電流を流した時に、もう片方に影響しそうだなあ、というよく分からない不安に基づいています。1点アースもどきです。

実際に作ってみて

部品を全て実装して、+5V→+12V(LT1935)と+12V→+5V(LT3502A)の動作を確認しました。ただし、無負荷時でしたので、最大出力近くでの挙動、ノイズの残有量、発振するかどうかなどは未確認です。


 実際に作ってみて気付いたことなのですが、ICのピンへの配線をPolygonで行ったところ、ピンによって細かったり太かったりとムラが出てしまいました。一番細いものだと、ピンの幅とほぼ同じ程度です。ちょっとしたことで切れてしまいそうで不安になります。次はもうちょっと等幅になるよう心がけたいです。

 
 さて、バグについての話です。
 最初、LT3502Aが+5Vを出してくれませんでした。発振もしていないようで、何を間違えたのか戸惑って、暫く別の+5V源を応急的に利用していました。
 その後、家で落ち着いて各端子ごとに電圧を見ていったところ、1ピン(#SHDN)も0Vになっていて、なんでだ!?となり、それで配線ミスに気がつきました。最初、#SHDNは0ΩでVinに接続していたので、このピンには問題ないだろうと信じていたんですが、まさかのミスでした。
 どうしたらこんなミスを防げるんでしょう?思いついたのは下の3つくらい。

  • 最後に配線忘れがないか、[Tools]→[Statistics]でunrouted wireの本数を確認する
  • PCBの編集画面で、Unrouted(20)層だけを表示して、目視確認する
  • 人間はミスをするものだと信じる

EagleのStatistics画面。未配線のwireの本数が分かる。unroute"t"…???
Eagleで、Unrouted(20)層とDimension(21)層だけを表示した図。これだと分かりやすい。

とりあえずは以上。Bloggerはファイルをアップロード出来ないので、Eagleのファイル一式はありません。
Read more →

2015/01/05

[電子工作]Sparkを利用して、無線コントローラを作った

,
 

 一応、Li-Poの過放電防止回路以外はちゃんと動作したので、そろそろ記事にしようと思いました。
 今日はもう寝たいので、詳細はまた追々書いていくつもりです(最近こう言っておいて、放ったらかしにしてるのばかりですね…)。差し当たって、回路図とパターン図を貼り付けておきます。

 滅多に居ないと思いますが、TPS2111やLTC3440を使う人の参考になればと思います。
回路図




 TPS2111は設定を最初間違えてしまっていて、切り替えが上手くいかなかったのですが、ちゃんと動くようになってからは「便利なデバイスだなあ」と思えるようになりました。
Read more →

[雑記]セミダブルのベッドを買った

,
 我が家の内部事情により、私の住まう部屋が別のところに移動することになりました。それに合わせて、ベッドを移動させるのが面倒なので、ベッドを新調することにしました。ただ、直ぐにそのためのお金が用意できるわけでもなく、予算数万円程度でやりくりすることになりました。
 結果としては、近所の島忠で「これでいいや」とセミダブルのベッドを買ったんですけど、今後選ぶ時に思い出せるようにメモしておきます。

  • マットレスとフレームは別々に選ぶもの。店員さんは、予算が決まってるなら、マットレス6割、フレーム4割くらいのウェイトを置く人が多いって仰ってました。
  • シングルとセミダブルは、幅が違うけれど長さは同じです。「シングルだと頭がぶつかる」といった長尺な人は、ロングサイズ(十数cm長いもの)を検討します。
  • セミダブルは、シングルと比べると幅が約20cm増えています。シングルかセミダブルのどちらがいいかは、実際に寝っ転がって、寝返りを左右に打てるかどうかで確認する。自分はシングルだと狭いなあと感じました。
  • 幅うち、端っこ10cmくらいはずり落ちる可能性があるので、寝返りを打つときは考慮に入れません。
  • ソファーとベッドを兼用するならば、ベッドのヘッドボード(参照)に背もたれがついたやつを選ぶと○。ソファーベッドは結局どっち付かずになってしまうらしいです。
  • マットレスを選ぶときの基準として硬さがありますが、私の場合、硬いと寝っ転がっただけで腰が痛くなってしまいました。個人的に、柔らかめのものの方が体にフィットして、自分の体重が分散されていいかなあといった感じ。
  • やはり有名ブランドがあって、SIMMONSとかがそうらしい(そして島忠だと安めらしい)。今回買ったのはdream bedというところのマットレス。
大体こんな感じ。
Read more →