オートメーション

mgcです。
最近、Youtubeでいろいろな工場の動画を見るのにはまってまして
たまたまAMGという車の工場の動画を見た時の話なのですが、
この工場はエンジン一つ一つを作業者が手作業で組み立てていました。

世間はオートメーションの時代なのにすごく珍しいなと
見入ってしまったのですが、
一つのエンジンを一人の作業者が担当するというところにも驚かされました。
量産を考えるなら、流れ作業で工程ごとに分けたほうが効率がいいのではないかと思ったからです。

そもそも量産を考えるならすべてロボットに任せればいいのですが。。。

ただそこまで手作業にこだわる理由がわかりませんでした。
ロボットでは補え切れない何かがあるのでしょうか。
気になるところです。

オーブン調理

mtjです。

冷凍ポテト等オーブンで調理することで油等を使用せずに作る事ができます。
冷凍ポテトは外がカリカリになり、焼き餃子も同じようになります。
もちろん電気代は少々かかりますが油の処理等が簡単になるのでおすすめです。
フライパンの前につかなくてもいいので色々楽もできます。
アルミホイルを被せたこ焼きを焼けばレンジで調理するとはまた違った感じに出来上がります。

以外とオーブンは便利なので色々使ってみると面白いかもしれません。

スイスの時計師

週末にスイスの時計師についてのドキュメンタリーを見ました。
彼らは、極小部品を組み込んだゼンマイ仕掛けの機械式時計を年に数本、
手作業で仕上げています。

納期に間に合うよう、スケジューリングを行い、
設計に基づき、数百に及ぶ部材を手配し、彫金師など関係者と協力しながら、
部品の加工や組立てを根気強く行います。

とにかく非常な集中力と忍耐力で作業を進めるのですが、
その中で彼らが大切にしているのは、「顧客のニーズに応えること」は勿論ですが、
「自分の技術に対して拘りを持つこと」、「その技術を全て注いだ製品に誇りを持つこと」だそうです。それにより製作中のモチベーションを保っています。

同じものづくりに携わる者として、この心構えは大切にしたいと感じました。

KeyValue属性

C#のお話です。

KeyとValueのペアを定義できる属性があると汎用に使えて便利ではなかろうかと思い、KeyValueAttribute属性クラスと、列挙型の場合に簡単にKeyValue属性の値にアクセスするためのEnumInfoクラスを作成してみました。以下に使用例を記載します。


//KeyValue属性を使用した列挙型の定義
public enum Idol {
    [KeyValue("Age", 16), KeyValue("Height", 162), KeyValue("BloodType", "A")]
    Chihaya,
    [KeyValue("Age", 14), KeyValue("Height", 145), KeyValue("BloodType", "O")]
    Yayoi,
    [KeyValue("Age", 13), KeyValue("Height", 158), KeyValue("BloodType", "B")]
    Ami,
    [KeyValue("Age", 13), KeyValue("Height", 158), KeyValue("BloodType", "B")]
    Mami,
}

//列挙型の拡張メソッドクラス
public static class IdolExtension {
    private static EnumInfo<Idol> EnumInfo { get; } = new EnumInfo<Idol>();
    public static int Age(this Idol idol) => EnumInfo[idol].GetValue<int>("Age");
    public static int Height(this Idol idol) => EnumInfo[idol].GetValue<int>("Height");
    public static string BloodType(this Idol idol) => EnumInfo[idol].GetValue<string>("BloodType");
}

//拡張メソッドの使用例
public void Sample() {
    int age = Idol.Chihaya.Age();
    int height = Idol.Chihaya.Height();
    string bloodType = Idol.Chihaya.BloodType();
}

上記のように、簡単に列挙型の拡張メソッド(Age,Height,BloodType)が出来上がりました。
静的なデータの場合はこの方法で拡張メソッドが定義できます。

しかし、動的なデータの場合は、今まで通り拡張メソッドを自力でゴリゴリ書かないといけないですね。属性でラムダ式が使えれば改善できると思うのですが。残念です。

同期モードを使用した直線補間。

QD77MS16で5軸以上の直線補間動作を実現しました。
仮想軸は使用せず、同期モードを使用しましたので最大16軸
の直線補間動作が可能です。
同期モードを使用する一番の理由は「カムの手回し」ができることです。
「カムの手回し」とは、主軸を動力軸から手動軸に切り換えて主軸と従軸の動作を確認することです。
手動軸のハンドルを正方向に回すと従軸は正方向に同期し、ハンドルを逆方向に回すと従軸も逆方向に同期します。
同期モードの状態で手動パルサを使うと「カムの手回し」を電子的に行うことができます。

自動運転?

mgcです。

以前、ニュースを見ていた際にある記事が目に留まりました。
それは、高速道路などでゆっくりと追い越し車線を走る車をボタン一つで
強制的に走行車線に戻すという技術が開発されたというものでした。

これはレクサスが導入した新しいシステムで
自車と前方の車を通信し、自車から安全に走行車線に戻す指示を行うというものでした。

自動車の開発も進みとうとうここまで来たか。。

思っていたのですが。

実はエイプリルフールの企画だったようです。
このニュースが掲載された日付は4月1日
これはまんまと騙されてしまいました。

CPU

mtjです。

最近AMDのRyzenが出ました、不評のBulldozerからZENアーキテクチャに変化です。
そんな自分も新品好きなのでFXの最上位が現状なのですが、DDR3で古くなってきたので乗り換え用と考えているところです。

ZENは仮想コアに対応しており、Bulldozerと比べてシングルスレッド辺りの性能強化を狙っているそうです。
Bulldozerは論理コア8等にし、intelの4コア8スレッドの仮想技術に総合性能(8スレッドフル稼働)なら勝てるという
思想のでしょう。

Zenはそこらへんを気にしてか仮想コア技術に対応しました、最高で8コア16スレッドです。
また色々メモリ最適化、演算プロセスが、消費電力がうんぬんってありますが詳しい話は別のところに書いてあると思われます。

使用者側からいうと性能が良くなるのはもちろんですが、消費電力が低いのがいいなと感じました。
最高性能のRyzenでもTDP95Wです。

FX-9590がTDP220Wなので約半分です。
TDPが低くなれば発熱も低いだろうということで色々助かりそうです。

まだ出たばっかなので様子見ですが、なかなか期待できそうなCPUだと思われます。

波形発生器クラス

制御系ソフトでは外部からのAD入力値をロギングして演算や制御を行うことがよくあります。

社内での開発時はAD入力機器が無い場合が多いので、AD入力のデバッグ用に波形発生器クラスを社内ライブラリに実装しています。

このクラスを使用すると、指定した条件の経時変化波形を作成できます。今のところDC ・矩形波・サイン波・CSVファイルによる任意波形の4種類に対応しています。

あとは必要になったらパルス波・三角波・ノコギリ波・複数の波形発生器の合成波くらいを実装すればだいたいのことは試せるはず。

クリーンルーム

10年ぶりにクリーンルームで作業しました。
しかも、ヘルメット着用です。
天井が高いうえに黄色い照明では活動が鈍くなります。
ゴム手袋の影響で手の甲には湿疹ができました。
新ラインの設置ということで連日大勢の人が出入りしていましたが
やはり、若い人が少ないと感じました。
製造現場は人気がないようです。
なので、我々のような年寄りが作業しているわけですが…。
安全教育も大事ですがクリーンルームにもそろそろ年齢制限が必要です。

画面割れ

mgcです。

以前落とした時から、
私のスマホの画面がバキバキに割れています。
何度か修理しようとも思ったのですが
驚くほど値段が高く、なかなか一歩踏み出せず
未だに割れている状態です。

オロナイン軟膏を塗ると治るという噂を聞いたことがありますが
本当なのでしょうか?
気になるところですが、自分では試そうとは思わないですね。