おたくんの出張ページ作成

ネットショップのリンク先
おたくんの出張ページなるものを作ってみました。

扱ってる商品のおすすめなどのリンク集です。
現在はとりあえず
焼き肉ショップの まんぷく焼肉 おたくん
 バイク関連の モーターショップ おたくん

の2店舗がメインになっているのでこちらから。
後々増やしていく予定なのでそちらの方もよろしくお願いします。

DesignSpark PCB の 3D エラー

DesignSpark PCB を使っていて回路図、パターン図ともに特に問題が起きていたわけではないのだけれど、基板の 3D 表示機能が働かないことが判明しました。

家で使っているものは問題なく表示できるからDesignSpark PCB 自体のものではないなと思っていたがようやく原因がつかめた。
エラーで異常終了食らうのは FMV-A2225 windows 8.1 64bit の環境。家の Acer 3830T では異常終了にはならない。何が違うかなと思いつつよく見ていると、毎回 OpenGL のロードあたりで止まっていることが判明。よくよく調べてみるとドライバが原因と言うことが分かりました。

FMV-A2225 の VGA は Mobile Intel(R) 4 Series Express Chipset Family でドライバは windows 8.1 の標準ドライバ 8.15.10.27xx 2013年のやつ。x のところ番号忘れました。どうもこのドライバが OpenGL に対応していないのか動作がおかしいのかよく分からないけれどダメらしい。

更新しようにも Intel のサイトでダウンロードしようと思っても 4 Series のものはwindows のものを使ってね。みたいらしく 8.1 のドライバは見つけられなかった。
で、仕方ないのでwin7 のものをダウンロードしてインストールしました。署名が、とか何とか警告出ましたけどここは強引に。インストール後バージョンは 8.15.10.2869 2012/10/4 になりました。たぶんビルド番号の 27xx から 2869 に番号が上がってる割に年代が若くなってるのはなぜに。でもバージョンは同じなのねと思いつつ、これに変えると起動しなかった DesignSpark PCB の 3D View が起動するようになりました。

すべて無事解決。というわけにも行かないわけであと一つ作業が残ってる。Windows Update には標準ドライバがまた追加されて27xx がインストールされてしまうと言うオチに。なので、Update に表示される更新ドライバは非表示にしてしまいましょう。ということで完了です。

家の desktop もそうだけど古いパソコンはそれなりっちゅうことかね。

基板CAD

これまで P板.com で紹介されていた CADLUS 基板CADを使っているのだけれども最近別のツールが紹介されてました。

一つが、クラウドを使った Quadcept 。無料版があるみたいだけど使うときだけ月額ライセンスを購入って言うかたちのもの。
もう一つが RS-Online の DesignSpark PCB ってツール。これは登録は必要ですがライセンス料金は無料で提供されてます。

ということで、RS の連携ツールということもあり DesignSpark を使ってみました。インストールしてアクティベーションを実行。ユーザー登録すれば使えるようになります。
アクティベーションするときに注意点。DesignSpark はPCB と3D-CAD のMechanical の2種類があって、どちらも無料で使えるんですが、登録するときのユーザー名に注意が必要です。
Mechanical の方はハイフンを含むユーザー名が使えたのですが PCB の方はハイフンを含むと登録できないという点。昔は使えたらしいのですが、バージョンが上がってからはムリみたいです。自分も登録できずメールで連絡して変更してもらいました。

とりあえず過去に作った基板の記録として回路図とパターン図の作成に使ってみると、自分の感じではわかりやすくて使いよかった。 CADLUS よりわかりやすいかも。これで商用、非商用の制限なく無料ってすごいねって感じです。ちなみに RS の提供ツールなので RS の販売ページと連携できるようになってます。

今度は Mechanical の3D使ってみようかな。

 

nec express 5800 解像度

サーバー OS を ubuntu 14.04 にあげてから解像度が 800×600 固定と悲しい状態になってしまった。何とかならないかといろいろ調べていたところようやく解決しました。まあ、サーバで作業することは滅多にないんだけど表示できることに越したことはないし。

それに、別にサーバーなんだからGUIいらないじゃん。というところもあるんだけど共有フォルダに日本語を使っている都合上何かと CUI だけではめんどくさい。なので GUI をいれていたんだけど 800×600 だからこれまた表示がきれたりして都合悪い。
とこんな状況でした。 10.04 の時は表示できてたはずだしまあ、モニタがへっぽこなのでせめて 1024×768 は出したいと思っていたのです。

ちなみに使っているサーバーは NEC Express5800/GT110b celeron モデル。
これのオンボードビデオを lspci で見ると
XGI Technology Inc. (eXtreme Graphics Innovation) Z9s/Z9m (XG21 core) となっていた。
実際メーカーのページでも XGI/Z9s ってなってたから認識は間違いない。

で、いろいろ調べてみると sis のドライバを使う、XGI のホームページからドライバをとかいろいろ出てきたがなんかホムペからは入手できなかった。というか見つからなかった。まあ、古いし。
で、xserver-xorg-video-sis のドライバは入っているから xorg.conf を書き換えて試してみようかと
ubuntu フォーラム の内容をまねて書いてみたけどダメだった。
あとから思うと XG20 core と XG21 core で違いがあったのかなとも思った。

何を設定してもダメなので最終手段 vesa ドライバ使ってみたらというところに行き着き /etc/X11 のディレクトリにあった xorg.conf.failsafe をリネームコピーして vesa ドライバで起動したらログイン画面が広くなって 1024×768 で表示できたというなんとまあという結果に。

もしかしたら 10.04 も vesa 使ってたのかな。
まあ、結果オーライということで。

PICでステッピングモーター駆動

ステッピングモーターを使う案件が来た。
ステッピングモーターは6本線が普通だと思っていたら、今回使うサンプルを見たら4本線だった。あれ?こんなのあるんだと初めて知った。
どうやって動かすの?と調べたらステッピングモーターにはユニポーラ駆動とバイポーラ駆動とか他にも2相じゃなくて3相、5相とかあるんですね。ふむむ。

とりあえず回路を作ろうと思ったが簡単な回路だとトランジスタ8個使うことになる…。複雑になりそうだ。ということでドライバICを使うことにした。
秋月電子通商さんで TA7774FG を発見。これだと入力端子に交互にパルスを入れてやれば回せるのでお手軽だなと選択し購入。

あとはモーターの制御。最終的にパソコンで制御したいらしいので、間に PIC を入れて制御しやすくしておいた。使ったのはPIC12F675。8本足のやつです。

ざっくりとPIC は GP0 ~ GP2 を出力、GP3 ~ GP5 を入力に設定。
ADC は未使用。内部発振。GP5 の IOポート割り込み有り。で設定。
動作は GP3 の状態を反転して GP2 へ。
GPIO の変化を検知して割り込み実行。
GP5 に入る負理論パルスを正理論に変換してドライバICへ伝達。
このとき GP4 の状態によりA,B チャネルのパルスの流れを反転。
という感じの仕様で作りました。
今回、割り込みを自分で組んだものでは初めて使ってみたけど意外と便利。使えるときは使っていこう。

プログラムは楽勝だ~とさくっと作成したら、いきなり2カ所ほどポカミスをやらかしました。
GP3 は入力のみだということを忘れて出力設定にしたら動かなかったという単純ミス。
プルアップの設定は wpu レジスタだけじゃなくて option レジスタの NOT_GPPU ビットを 0 にしないと有効にならないということ。
なんとまぁ。

そんなこんなで、間違いはあったけどPICは意図した動作をきちんとしてる。のだが、モーターを回すと回っているけどカクカク…?。
原因調査。
まずはモーターメーカーの制御ボードで実験。めっちゃスムーズに回る。原因はモーターではない。
次はドライバIC の特性なのか。ということで、発信器があったら良かったけどないので、PIC でパルス発生のプログラム書いて送信してみた。これも評価ボードほどではないけどスムーズに回る。
結論。パソコンが悪い。VEEでパソコンから制御パルス送っているのだけれどもどうやらこれがくせ者らしい。おそらく、VEE のデバッグモードだと割り込みやらなんやらでウェイトがきちんと動作しないようでこれが原因っぽい。
はじめは自作PIC-CDCのデジタルIOでカクカク動作だったのでメーカーもののDIOだと大丈夫かなと思ったがやはりダメっぽい。ランタイムにして動作させればもしかしたらうまく動くかもしれないが、パソコン制御は別担当なので、また後日その辺試してもらおう。
パルスも PIC 制御しなきゃダメなのかな。それの方が面白いけど。ちょっと期待。

一応、ソースコード。続きを読む以降に貼っておきました。
SourceBoost の BoostC 使ってます。どれもまあ似たようなものかと。

続きを読む