Dynamoを活用すれば、作業を自動化することで時間や労力を削減し、効率化が図れます。汎用(はんよう)的なプログラムを作成することで、類似プロジェクトに展開できます。また、プログラムを社内で共有すれば、Dynamo Playerで実行することで誰でも同じ品質の結果を得られます。
- タスクの自動化による効率アップ
- ルーティンワークの自動化
- 同じ品質と結果を得られる
Dynamoの基礎・メリット・デメリットを徹底解説
Autodesk RevitやCivil 3Dに標準搭載されている「Dynamo(ダイナモ)」は、追加ライセンス購入不要で無料で使えるビジュアルプログラミングツールです。ノードと呼ばれる箱をつなげるだけで、プログラミング初心者でも簡単にプログラムを作成できます。
BIMやCIMのモデリング作業は、従来のCADより多くの工数が掛かります。Dynamoを使用することで自動化を実現でき、効率化を測ることが可能です。本ページでは「Dynamo」の情報をまとめ、徹底解説します。
Dynamoは、プログラミング経験の有無にかかわらず、誰でも簡単に使用できることを目的として開発されたビジュアルプログラミングツールです。同じようなツールでは、RhinocerosのGrasshopperが有名です。
今まではソフトウェアを開発する際、プログラマーが複数のプログラミング言語の知識を用いてコードを書く必要がありました。ソースコードを書いて、ビルドして、ロードして……と、手間が掛かりますので、どうしても開発期間やコストが掛かってしまいます。
それに対してDynamoでは、「ノード」と呼ばれる、事前に用意された関数を配置して、ノード同士を線で結びつけるだけでプログラムを作成することができます。ノードとノードのつながりがビジュアルで理解できますので、プログラミングの知識がない方でも比較的簡単にプログラムを作成できます。
Dynamoは作成したプログラムをファイルに保存でき、通常のデータと同じように、ほかの人と共有できます。
Dynamo Playerは、作成済みのDynamoプログラムをワンクリックで実行する機能です。Dynamo Playerを操作する人は、プログラムの中身がどのように組み立てられているか知ることなくプログラムを実行できます。
例えば、BIM推進チームが作成したDynamoプログラムを社内で共有して、設計部がDynamo Playerで実行するといった運用が可能です。
RevitやCivil 3Dでの作業において、下記のような課題をお持ちではないでしょうか。
Dynamoを活用すれば、作業を自動化することで時間や労力を削減し、効率化が図れます。汎用(はんよう)的なプログラムを作成することで、類似プロジェクトに展開できます。また、プログラムを社内で共有すれば、Dynamo Playerで実行することで誰でも同じ品質の結果を得られます。
Dynamoにはさまざまな機能がありますが、具体的にどんなことができるのでしょうか。
上図のように、主に六つの利用パターンあると言われています。もちろん六つのパターンは単独で構成されておらず、それぞれを組み合わせてRevitやCivil 3Dの構成情報をコントロールします。
例えば、Revitで配置されているファミリの属性情報を取得し(A)、Excelに書き出す(C)。そしてExcelで修正したデータをRevit側に戻し(C)、特定の情報が入っているオブジェクトのみを着色して表示する(B)といった具合です。
具体的な事例は、ページ下部ある関連情報よりご確認ください。実際に動作をしている動画も掲載していますので、ぜひご覧ください。
ここまで読んでいただくと、「ちょっとDynamoを使ってみたい!」と思った方がいるのではないでしょうか。
しかし、「Dynamoの始め方が分からない」「Dynamoの使い方が分からない」そういった方へ基本操作の学習方法をご紹介します。
Dynamo Primerは、オートデスクのMatt Jezyk氏とDynamo開発チームによって開始されたオープンソースプロジェクトです。Dynamoの基本情報を共有することを目的としており、継続的に更新されています。
Dynamo スタートアップサービスとは、Dynamoの基本操作をひと通り学んだ後、演習としてサンプルプログラムを実際に作成できるという講習内容になっています。
大きく建築編、土木編に分かれており、それぞれ業種に合わせた演習プログラムを選定しています。1コース当たり半日で学習できるボリュームで、初めて触れる方に最適な講習です。
詳細は次のリンクをご確認いただき、お気軽にご相談ください。
Dynamoでのビジュアルプログラミングの基本操作が理解できたら、実際にプログラムを構築し、業務の効率化に取り掛かりましょう。プログラムを構築するうえで役立つ情報を記載します。
Autodeskにはソフト使用方法やトラブルなどがあった場合、質問ができるインターネットフォーラムがあります。不明点があった場合は質問してみましょう。
大塚商会では「Dynamo 実践支援サービス」を準備しており、お客様の業務内容に合わせたDynamoプログラム作成をサポートしています。実用的なDynamoサンプルを作成し、Dynamoで自動化が可能な業務を顕在化して、業務の効率化が図れます。
要件のヒアリング
お客様:インプットデータ、アウトプットデータをご準備いただきます。
大塚商会:要件をヒアリングさせていただきます。
Dynamoサンプル作成
大塚商会:ヒアリング結果に基づいてDynamoサンプルを作成します。
レビュー
お客様:Dynamoサンプルをご確認いただきます。
大塚商会:課題や質問事項を洗い出しを行います。
Dynamoサンプル修正
大塚商会:Dynamoサンプルを修正します。
詳細は次のリンクをご確認いただき、お気軽にご相談ください。
Dynamoのノードだけでは実行できない、より発展的な機能拡張が必要な場合には、Pythonスクリプトを書くという手法が提供されています。Pythonは、プログラムの読みやすさに加えて実用的で高い拡張性を備えたオープンソースのプログラミング言語です。
Dynamoでは、下図のような「Python Script」ノードで編集を実行し、表示される専用画面でPythonスクリプトを書いてRevit、Civil 3D、AutoCADのデータを直接操作することができます。
例えば、同じ処理を繰り返し実行・計算を行うようなプログラムの場合、Dyanmoのノードで書くと必要な回数だけノードを配置する必要がありますが、Pythonスクリプトであればfor文を使ったループ処理を書くだけで済みます。実際には、RevitやCivil 3DのAPI Referenceを参照しながらプログラムを書く必要があるため、プログラミング経験のある上級者向けの拡張機能となっています。
DynamoでのPythonスクリプトに興味がおありでしたら、以前当社で開催したセミナー動画をご視聴ください。
さて、ここまで「素晴らしい」と紹介したDynamo、比較的簡単に作成でき、直観的にプログラミングができますが、デメリットもあります。
通常のAPIなどと比べると、コントロールできる機能に制限があり、動作の応答性(処理速度)も劣ります。運用規模を広げたい場合や利用者から応答性で不満が出た場合は、APIを使用した「カスタマイズ(開発)」を視野に入れ、ご検討ください。
大塚商会では「システム開発/カスタマイズサービス」の請負業務も展開しています。詳細は次のリンクをご確認いただき、お気軽にご相談ください。
Dynamo スタートアップサービス(建築編・土木編)
Dynamoとは、RevitやCivil 3Dに標準搭載されているビジュアルプログラミングツールです。事前に用意されたノード(関数)を接続するだけでプログラムを作成でき、業務の自動化・効率化が図れます。ノードの組み合わせ次第で活用方法は無限大なため、自社の業務に合ったプログラムを自由に構築することができます。Dynamoスタートアップサービスでは、既定のサンプルプログラムを利用したハンズオン講習でDynamoを体験いただくことで、自動化が可能な業務を顕在化するヒントを得られます。
Dynamo 実践支援サービス
Dynamoは非常に便利なツールですが、自由度が高い分自社の業務や環境・運用方法にぴったり合ったプログラムを一から作成するのは時間がかかります。また、自動化・効率化の要望はあっても、それが技術的に可能なのか判断するのにもある程度知識や経験が必要です。Dynamo実践支援サービスでは、お客様の業務に合わせた実用的なDynamoサンプルを作成します。Dynamoで自動化が可能な業務を顕在化し、業務の効率化を図れます。