2016-9-21(水)今朝から闇金融系のspamが10分に1通のペース。Berlinをインストール。2016-9-20(火)S社向け旧ユニット用のプログラム。スピンドルの減速定数を0.1S/1000rpmにしたものを各バージョン分作ってメールで送信。9/22のCM社での作業予定を作成してメールで送信。S社のユニットでUSBが途切れる件について調査。7.5mのUSBケーブルで試してみても社内では再現できない。S社のユニットでスピンドルの回転信号がONになった後すぐOFFになると回転が止まらないという現象。レーザON/OFFも同じだったので対策。イモ半田で浮いていた。S社向けプログラムのフォルダ指定とパラメータ設定を参照だけにしてエディット入力を無効にする。2016-9-18(日)宇品の半田屋で食事。宇品東のイオンで買い物。Findfirst()、Findnext()関数でファイルを検索した時の検索時間を表示するプログラムを作成。歩いて出かけて近所のイオンで買い物。2016-9-17(土)宇品東のイオンで買い物。2016-9-16(金)捗らず。2016-9-15(木)引き続きCM社のエッジャー。ユニット1と2の判別をディップスイッチの設定で行っていたが、同期信号の入力の有無で判別するように変更。同期信号が無かった時のエラー表示も追加。AGVセンサボード2枚の修理。2016-9-14(水)テンポソニックを接続したり外したりした時に移動平均が入ったような症状がでるので調査。昔作ったプログラムに一定以上の変化をさせないような処理が入っていた。DIOで接続して同期させた時にスレーブ側の値が乱れる。DIOの速度が遅いため信号の立ち上がりでチャタリングしていた。立ち上がり部分を無視するように変更。2016-9-13(火)引き続きCM社のエッジャーの電源ON時の処理。テンポソニックの値をグラフ表示する機能を追加。モニタを固定するための金具をベンダーで曲げて作る。シーケンサとの数値のやり取りをM社さんと確認。マイナスの値がよく分かっていなかったがはっきりした。ユニットとのやり取りでステータスを増やしたら通信エラーが出てハマる。結局構造体が2バイト増えたのが原因。構造体は4バイト区切りの制約があるので大きさの判定がうまくできていなかった。2016-9-12(月)CM社のエッジャー。2つのユニットを同期させる部分。DIO経由で同期させるのだけれどフォトカプラが入っているので数μSの遅延が出る。FPGAのプログラムを調整してユニットの個体差を含めて±100nS程度に収まるようにする。テンポソニックの値が安定していなかったのでデータ取得方法を変更。スタートパルスの立ち上がりからゲートパルスの立下りまでの時間を計測していたのをゲートパルスのON時間を計測するように変更。ユニットとパソコンとの通信エラーを調査。ユニットのSTM32のコンパイラの最適化をOFFにするとエラーが減った。受信バッファポインタをクリアする条件をSYNコード受信時のみにするとエラーは出なくなった。Windowsアプリのステータス表示を追加。デバグしやすくなった。電源ON時の処理を変更。テンポソニックの現在位置が安定した後に目標位置を現在位置を同じ値にしてサーボを掛けるように変更。日常点検のCSVファイル保存に点検日時項目を追加。2016-9-11(日)今日もCM社でエッジャーの立ち上げ工事。朝6時半過ぎに家を出て呉のCM社へ。8時前に第8工場へ着。テンポソニックの値をフィードバックして油圧シリンダを制御する部分。1CHずつ確かめてみる。積分制御ゲインが大きすぎるようだった。昨日パソコンが壊れたのでユニットの書き込みができない。営業が持っている同じタイプのパソコンをもらう事になって取りに帰ってもらう。変な値を返しているテンポソニックをオシロスコープで調査。2台あるユニットがそれぞれ別のタイミングで動作しているのだけど他のユニットが出しているスタート信号に反応している。2つのユニットを同期させる必要がある。余っているデジタル入出力を繋いでFPGAを書き換えて同期させる。ユニットとパソコンとの通信でエラーが出る。普段は正常なのに何かのタイミングで2つのユニットに同時に発生して暫く続いた後に正常に戻る。原因が分からずギブアップ。既存の装置でセンサの電源が入らない症状。