• 放送裏話:OpenComputersのプログラムを一部公開します

    2018-05-23 00:57
    適当に作ってまともに動作するOpenComputersのプログラムを公開します。OpenComputersでプログラムをやりたい方の参考になれば・・・
    頑張ったらComputerCraftに書き換えれます(書き換えれない物もあります)
    煮るなり焼くなり、書き換えてもいいですが丸コピして転載等禁止します

    • アセンブリングラインコントールプログラム ver1.5
    1年位かけて作りました 配布先 → OneDrive
    下の画像の用に右のレベルエミッタの信号を検知し、左のラインへ信号を送ってラインを制御するプログラムです。AE2のネットワークから必要なアイテムを検索、在庫数を比較してラインへの信号を送ります。デバッグ用にチャットとログを出力してくれます
    上のレベルエミッタはリログ時の誤動作防止。下の信号は在庫が足りず、補給した時のリセットの時の信号入力用


    システム要件
    ・サーバー ティア3×1
    ・CPU ティア2以上×1
    ・メモリ ティア3.5×4
    ・HDD ティア1以上×1
    ・ComputerCraftアドオンのPeripheralPlusPlusのChatBoxとAE2のMEInterfaceを使用します(アダプターを介します)

    今後の更新予定:ver2.0あたりでチャットとログ出力を日本語化、ver2.5あたりで融解ソルダリング合金の保存数の監視も行えよう用に
  • 広告
  • 放送裏話:GregTech6の機械の自動クラフト設備を並列化したい(できた)(2018/05/15:更新)

    2018-03-31 20:073
    最近、AE2の記事あげたりするのは題名の通り
    GregTech6の機械の自動化がくっそめんどくさい為、AE2の仕様を調べまくってどうにかしたくてメモ代わりに投稿してました(結局ね、望み通りの挙動にはならなかったんですけどねぇ・・・、2018/05/15追記:ついに全部自動化できました)

    1.なんでできないの?
    GregTech6の機械の自動クラフトがめんどくさい理由
    • GregTech6の機械は搬入出方向及びエネルギー入力面が指定されている = 施設が巨大化してしまうのは当然
    • 自動搬出自動搬入方向も決まっているる
    • クラフトに要求されるのが複数素材だったり、液体とアイテムを同時に搬入しないとしけない
    単一機械の自動クラフトを組むだけなら上のめんどくさい理由は弊害はない(ME インターフェースを直付けすればほぼ問題ないし)
    問題はね、並列化するときなんですよ(私は一回で100以上発注するので速度が必要なんです・・・、AFSU500個発注で8時間とかやってられない)
    並列化するのがめんどくさい理由は以下の通り
    • クラフトに要求されるのが複数素材だったり液体とアイテムを同時に搬入しないといけないため、多数の機械にアイテムを同じ比率に搬入しないといけない
    • 多数の機械(多くて30台)を使うため、クラフティング・コ・プロセッシングユニットを大量に設置し、莫大なチャンネルを使うわけにもいかない
    2つ目の奴はそこまで大規模なネットワークを組んでなければ、問題ないはず。

    2.できたんだよね?
    はい、妥協しましたけど一部分はできました。
    2018/05/15追記:ついに全部自動化できました
    アイテムの同時搬入はME インバーテッドトグルバスとME レベルエミッタをアイテム-O-メーターセンサーでME ネットワーク内のME ストレージを制御する方法(下の画像×3)でできました。搬入が早すぎてきれいに分配できませんがクラフト比率はあってるのでできてる




    アイテムが複数、液体を使うバスの自動化ですが・・・私の知識では無理でした!!
    なにかいい方法ありますかねぇ・・・
    幸いGregTech6の機械は液体とアイテムの搬入口が同じなのでLogisticPipeを使えば搬入はできるんですが、AE2でLogisticPipeのクラフトを発注できないので使えない悲しみ
    ついに成し遂げました、アイテムが複数、液体を使うバスの自動化を!!!!
    下の2枚の画像のようにやればできました、AE2 ExtraCellsとロジを使って
    流れは以下の通り
    液体インターフェースより発注→タンクとチェストに搬入→ロジの自動アクティブリクエストでアイテムを浴槽、液体をバッファタンクへ搬入→アイテム搬入後、ゲートによってアイテムの方のサプライヤーパイプ無効化→バッファタンクからMEネットワークを用いて浴槽へ搬入→プログレスセンサーによって液体のサプライヤーパイプ無効化→以下ループ


  • Applied Energistics 2(AE2)の輸送特性について

    2018-03-30 19:29
    Applied Energistics 2(以下AE2)上級者を目指すためにいろいろとテストしてわかった他のMODにはないAE2独自の輸送特性についてのメモも含めた解説記事となります
    並列処理機構を組むにあたって重要な部分になります。ぜひマスターしましょう

    解説にあたって
    MEコントローラー(ME Controller)を使って構築するネットワークをMEコントローラーネットワーク(ME Controller Network)
    MEコントローラー(ME Controller)を使わずに構築するネットワークをMEアドホックネットワーク(ME Ad Hoc Network)
    MEネットワーク(ME Network)を上記2つのネットワーク両方を指す
    ・搬入(Import)をとあるストレージにあるアイテムを別の場所又はMEネットワーク(ME Network)内移す事、搬出(Export)をあるアイテムをとあるストレージ又はMEネットワーク(ME Network)外へ移す事、輸送(Transport)をアイテムをパイプなどで運ぶ事を指す
    ・AppliedEnergistics2 rv3 beta6での動作を確認しています
    以上のことを定義付けし、記事内では分けて使用します(定義付けはこの記事独自のものです)

    目次
    ・AE2の輸送
    ・AE2の搬入
    ・AE2の搬出
    ・MEネットワーク内での動作
    ・応用1:複数アイテム同時搬入クラフト並列処理化
    応用2:複数アイテム、液体同時搬入クラフト


    ・AE2の輸送
    私は以前「AE2は輸送能力がとても高く優秀だ!!」と思っていました、そう思ってる方も多いと思いますが全然違います。
    上の定義に当てはめるとAE2の輸送能力はP2Pトンネルのアイテムを使った場合(下の画像)のみで、ほぼ皆無に等しいです。AE2が優秀なのは搬入、搬出です。
    このP2Pトンネルのアイテムは輸送上限、輸送時間などは無いのですがThermalDynamicsのダクトに繋がりにくいなど難点もあります


    この特性を知らず良くやってしまうミスとして下の画像の用にインポートバスとエクスポートバスをそのまま繋げて動作しない!!ってことがあります。



    ・AE2の搬入
    AE2でアイテムを搬入する方法として2種類あります
    一つは「あるストレージからME インポートバスを使ってME ネットワークへ搬入する」
    もう一つは「ME インターフェースに入ってきたアイテムをME ネットワークへ搬入する。アイテムが複数かつ多数あっても同時にME ネットワークへ搬入を行う」
    一つ目の奴はよく使われる方法で1つのME インポートバスで最大1チック1スタックの搬入速度を誇ります。
    2つ目は知ってる人は少ない(?)かもしれないですがSuper Soaryn Drive(SSD)を構成するための機能の一つだったりします。二つ目の機能はME インターフェース無いのコンフィグに搬入中のアイテムが見えたりします
    二つ目の機能の最後の部分がME インポートバスと大きな違いですね。例えばジャングルの木64個とオークの木64個を搬入する場合、ME インポートバスだと2チック、ME インターフェースだと同時に128個搬入できます


    ・AE2の搬出
    AE2でアイテムを搬出する方法として3種類あります
    一つは「あるストレージへME エクスポートバスを使ってME ネットワークから搬出する」
    もう一つは「ME ストレージバスを使ってあるストレージをMEネットワーク内のストレージとして認識しアイテムを搬出する。多数のアイテムを同時搬出する」
    最後の一つは「ME インターフェースを使って自動クラフト発注時にアイテムを搬出する」
    一つ目の奴はよく使われる方法で1つのME エクスポートバスで最大1チック1スタックの搬出速度を誇ります。
    2つ目は知ってる人は少ない(?)かもしれないですがSuper Soaryn Drive(SSD)を構成するための機能の一つだったり、複数アイテム自動クラフト機構に組み込んだりするのに必要な機能です
    最後の一つはアイテム自動クラフトする際にME インターフェースを介して自動クラフト発注時にアイテム搬出されます
    二つ目の機能の最後の部分がME エクスポートバスと大きな違いですね。例えばジャングルの木64個とオークの木64個を搬出する場合、ME インポートバスだと2チック、ME ストレージだと同時に128個搬出できます


    ・ME ネットワーク内での動作
    ME ネットワークでは上の機能全てが非同期的に行われてます。
    搬入出にあるアイテムの同時搬入出は、液体だろうがガスだろうが同時にかつ一緒に搬入出できます(例3に詳細あり、別途アドオンが必要になります)
    そしてMEネットワーク内を介した搬入出(例2など)は高速過ぎて、レベルエミッタとME インターフェースのブロッキングモードを用いた制御でも失敗する可能性があります(下画像)

    上画像の詳細は左のレシピのエナジークリスタルを20個発注、その発注して処理をする機械の中が右です(機械内のアイテム数が1を超えた瞬間ネットワークがから分離の設定)。レシピの材料比は正しいですがアイテムが大量に搬入されてしまっています。※レベルエミッタ自体は別のMEアドホックネットワークとして設定、搬入出を制御するME ネットワーク内にレベルエミッタを設置すると動作がおかしくなるので注意


    ME ネットワーク内での動作の例を以下に示します
    例1:あるストレージからME インポートバスを使ってME ネットワークへ搬入、ME ネットワーク内にME ドライブが無いためME ストレージバスへそのアイテムを搬出 = あるアイテムを搬入し輸送、搬出
    例2:あるME ネットワークから自動クラフトを発注しME インターフェースを介して搬出、更にME インターフェースを介して別ME ネットワークへ搬入、別ME ネットワーク内の機械へ搬出
    例3:あるME ネットワークから自動クラフトを発注しME 液体インターフェースを介してアイテムと液体を搬出。更にME インターフェースを介してアイテムを、ME 液体インターフェースを用いて液体を別MEネットワークへ搬入、別ME ネットワーク内の機械へ搬出


    ・応用1:複数アイテム同時搬入クラフト並列処理化
    今回は下の画像にあるGregTechのオートクレイブの複数アイテム同時搬入クラフト並列処理を例に紹介します。(上の例2)

    上の画像の様な機構を組めば自動化できます
    ブロック型MEインターフェースと隣接型MEインターフェースを設置し、隣接型MEインターフェース側にME ネットワークを展開しています。ブロック型MEインターフェースの「Blocking Mode」を「Do not Push Crafting Items if inventory contains items」に設定しといて下さい
    オートクレイブ付近は下の画像のとおりになっています。ストレージバスにより複数のアイテムの同時搬入が可能になります

    この機構を並べていくだけです。並べる場合、念の為搬出を行うストレージバスの優先度を入れたい順番通りにしておきましょう
    下の画像の用に展開するネットワークをME コントローラーネットワークにしてP2Pを使ったりSSDを使うと比較的簡単に大規模化できます



    応用2:複数アイテム、液体同時搬入クラフト
    今回は下の画像にGregTechのバスの複数アイテム、液体同時搬入クラフトを例に紹介します。(上の例3)(こいついっつもGregばっかり自動化してるな?)

    上の画像を詳しく説明すると下の画像の通りです上の画像の後ろから見た状態のものになります。

    画像を見てあれ?アイテムだけの監視でいいの?って思う人がいるかもしれないですが、上にAE2の液体とアイテムを同時に搬出できる特性があるためアイテムの監視だけで制御できます