ウィキ2012-112012-11-30(金)今日は会社のエアコンの修理が8時半からあるというので鍵を開けるために早出。修理屋さんが来たのは9時だった。先日修理したAGV用センサボード3枚の再修理。先日注文したケーブルが届いたので動作チェック。プログラムの細々としたところに手を入れる。I/Oのチェック機能など。S社から昨日送ったユニットのプログラムが動かないとの連絡。干渉外信号が無いタイプを入れた現場だったのでは?S社向けユニットのプログラムとWinのプログラムをあれこれ修正。K君に頼んでおいた見守りシステムの自動メール送信部分のプログラムが出来てきた。日本語が文字化けせずにメール送信できている。2012-11-29(木)INtimeのランタイム版をインストールした。すると開発環境が動かなくなった。聞いてみるとランタイム版と開発版は共存できないとのこと。仕方なく開発環境を自分のノートPCに構築することに。VisualStudioをインストールしようとするとWindowsのサービスパック3が必要と言われる。入れていなかったのかと皆から笑われた。Windowsのサービスパック3とVisualStudioとINtimeのインストールで半日近く掛る。S社からOK/NG信号と準備完了信号を同時に出すようにして欲しいとの要望でユニットのプログラムを修正してメールで送信。ソースを移してコンパイルすると沢山のエラー。パスが違ったりライブラリが足りなかったり。なんとかコンパイルできるようになる。スキャナのマスク処理部分を追加。IMEのユーザ登録辞書が候補に出なくなった。ググってみるとSP3を入れた時の問題らしい。登録語をすべて名詞にして解決。サービスパック3を入れたらフォントが変わった。実害は無いが気持ち悪い。2012-11-28(水)不動小数点のエラーが出そうな所を徹底的にチェック。初期化忘れや0による割り算対策。INtimeの実行ファイルであるRTAファイルをWindowsのアプリケーションから起動したり停止できるようにする。Windowsアプリケーションのショートカットをスタートアップフォルダに入れて自動起動にするとINtimeの起動が間に合わなくて初期化できない。あれこれ試してもだめなのでメッセージウインドを出してINtimeの起動を確認することに。市内CD社で打ち合わせ。来週火曜のテストについてなど。RS232CのケーブルとLANのクロスケーブルを手配。2012-11-27(火)シーケンサの固定値の部分。不動小数点のエラーが出ている原因を調査。VBから移植したところで、VBだと変数を宣言すると0に初期化されるけどCだと初期化されないという違いがあった。2012-11-26(月)休み中に作ったプログラムのデバグ。2012-11-25(日)USTREAMでマイクロマウス全国大会決勝を見る。2012-11-24(土)家のパソコンが偶にフリーズするようになった。買ったのは2003年の4月なのでもうすぐ10年。コンデンサの容量が抜けてるのかも。USTREAMでマイクロマウス全国大会を見る。フレッシュマンクラスの予選で1枚の迷路を4つに区切って4台のマウスが同時走行している。ウイングマウスは出場しないということなんだな。スキャンデータから材の大きさと傾きを求める部分を少し。スキャンシーケンス部分。ノートPCのディスプレイが小さいので画面設計が満足にできない。2012-11-22(木)シーケンサを一旦CD社に返さなければならないのでINtime側でシーケンサの動作をシミュレートするように改造。レーザスキャナの部分をあれこれ。スキャン速度100Hzを維持すると現在の分解能は上げられない模様。結局100mm間隔で変数に入れてメディアンフィルタを掛けることにする。Win側で動作を確認した後にINtimeの方に移植。TempoSonicの実位置計算もINtime側に移植。2012-11-21(水)S社向けユニット2台の改造。DIOの抵抗交換とコンデンサ追加。AGVメインボード3枚、センサボード7枚の修理。2つのレーザスキャナのデータを合成する部分を少し。レーザスキャナの光軸合わせのためにUSBカメラを改造。赤外カットフィルタを外してその辺にあった可視光をカットしそうなフィルタを組み込む。2012-11-20(火)シーケンサ書き込みの処理時間を調べる。連続書き込みをすると待ち時間が発生して20msecくらい掛かっている。INtimeとのやり取りで一旦Win側のメモリにコピーしていたのを、共有メモリに直接アクセスすることで高速化。シーケンサの連続書き込みは10msec程度になった。DT社AGV用のEPROMを2個書き込み。レーザスキャナ部分を少し。2012-11-19(月)TeeChartPro7をアンインストールしてBuilderを再インストール。発信も着信もできない。油圧シリンダの位置校正部分を作成。会社の電話は外にある保安器の端子台に雨が浸入し、ケーブルが腐食して切れたらしい。油圧シリンダのシーケンサとのやり取り部分を作成。岐阜方面から柿が届く。ありがとうございます。2012-11-18(日)蟄居。2012-11-17(土)宇品をうろうろ。ニトリやらcoco壱番屋やら。2012-11-16(金)送受信する構造体の変数の一部をshortからfloatに変えたらチェックサムエラーが出るようになった。4バイト境界に置かれる関係でfloatとshortの間に隙間ができているらしい。floatの配置を変えて解決。鹿島方面からインバータの回転数がおかしいとの連絡。うちの装置の電圧が出ていないのか、インバータの故障なのか。I/Oユニットを準備。油圧シリンダの制御にI制御を追加。位置決めにはI制御が必要だよね。油圧シリンダ制御ユニットにUSBをつないでモニタするとシリアルポートが時々チェックサムエラーを出す。メイン処理をタイマ割り込みに移して、シリアルポート割り込みの優先順位を上げて、時間が掛かるUSBでの画面描写中にシリアルポートをチェックするように変更。福山方面の含水率計が壊れたらしいとの連絡。今VBを移植しているC++BuilderにはTeeChartPro7がインストールされていることが判明。M氏がインストールていた。納品してまうと手元のPCでコンパイルできなくなるのでTeeChartPro7を外す作業。パッケージを外してもなぜだかBuilderがobjを要求してくる。再インストールした方が良いのか?2012-11-15(木)引き続きVBのソースをBuilderに移植する作業。全てのウインドが完了。出張中のS社のかたから連絡。DIOからの待機位置移動がうまく動かないとのこと。待機位置移動が6mmピッチ送りネジに対応していなかった。修正してメールで送信。見守りシステムをエプソンのEndeavorNP30Sにインストール。メール送信部分をちょっと作成。出張中のS社のかたにあれこれコンパイルしてメール。CM社から最新のVBのソースが届く。今移植しているのとちょっと違っていた。2012-11-14(水)VBのソースをBuilderに移植する作業。出張中のS社のかたから連絡。パラメータを変更せずに設定信号がきた時にACKが出なくなっていた。