特定のプラットフォームが本番環境での使用に適している、または不適切である理由は何ですか?[閉まっている]


9

商品のコストが重要でない要素であると仮定しましょう。特定の製品のカスタムボードを作成するチームが不足している会社で、Arduino / Netduino / mbedなどの既製の開発プラットフォームで成功している場合、次に進む前にどのようなことを考慮する必要がありますか?

誤解しない限り、Arduinoはもともと低価格で使いやすさから大学生をターゲットとしていました。当然、アーティストやメーカーにとって人気のプラットフォームになりました。私はNetduinoをArduinoの論理的な拡張と見なしています。これにより、人々は堅牢でリッチなIDE(Visual Studio 2010)を使用し、.NET Micro Frameworkを介してすばやく作業を行うことができます。mbedは、その使いやすさ、無料のツール(オンラインコンパイラ)、およびハードウェア周辺機器のため、もう1つの素晴らしい趣味のプラットフォームです。

だから私の質問は、企業が本番用にこれらの開発プラットフォームを採用してはならないのはなぜですか?言い換えれば、Sparkfunからいくつかのボードを購入し、それぞれをコードでプログラミングしてから、製品を顧客に展開するのは悪い考えですか?

私は特にNetduinoに興味がありますが、Arduinoとmbedに対する/に対する議論も歓迎します。裏側で、あなたは、またはあなたはこれを以前にしたことがありますか?

私は個人的には、Netduinoの開発を他のプロセッサメーカーが製品統合のために販売している「コアモジュール」と見なしていますが、ここで重要なものが欠けているのかもしれません。

回答:


5

コントローラーモジュールを調達する際に目にする可能性があるのは、長期にわたる供給のセキュリティ、ライセンスの問題、製造のためのファームウェア読み込みプロセスの非効率性、コードのセキュリティの問題、製造の品質や規制への準拠などです。それらのいくつかは、他の誰かにあなたの製品の他の機能と同等のものを作ったり、最終的に他の機能とマージさせたりすることができる比較的オープンなものよりも、プロプライエタリなモジュールにとってより関心事になります。


供給が問題になる可能性がありますが、少なくとも* duinoのデザインはオープンソースです。
デイブ

@デイブ-あなたはポイントを逃した。Chris(私は思う)は、ハードウェアではなく.NETの問題について主に話していました。
ケビンフェルメール

1
@reemrevnivek-うーん...確かに私にはハードウェアの問題のように聞こえました。なぜ問題、ファームウェアのロード、および製造を提供するのでしょうか。品質は.NETと関係がありますか?
デイブ

1
代替のソースボードに特定のランタイムをロードするためのライセンスを取得できる場合とできない場合があります。私が提案していたさまざまな問題は、必ずしも互いに関連しているわけではない品揃えです。
Chris Stratton

12

うわぁ!完全に混乱しているのか、それとも制作のアイデアが私のものと違うのか。生産とは、製品を一般の人々に数千以上の量で販売し、設計をサポートおよび更新することを意味すると見なします。一般に公開されない製品は社内作業または契約作業のいずれかであり、少量で販売される製品は特殊用途またはその他の点で異なります。「Sparkfunのいくつかのボード」は、プロダクションのニーズを満たしません。

まず、商品のコストは常に重要な要素です。それがどれほど重要であるかは製品ごとに異なる可能性があり、特定のアイテムがコストのために最適化されたより大きなシステムの小さなコンポーネントのみである場合は、それほど重要ではない可能性があります。ただし、他のプロデューサーと競争している環境では(政府に所属している場合や独占している場合は、この質問をすることはないため、そうする必要があります)、コストが要因になります。Netduinoの35ドル(コストのみ)は、通常、カスタム設計のほとんどのアプリケーションで10ドル以下に削減できます。コストが問題ではないと確信している場合、そのようなデザインを購入することにはさらに理由があります。

はい、3つすべてのボードは学生、デザイナー、愛好家のために設計されました。それらは、机の上に置かれる開発キットに十分に信頼できるように設計されています。その学生は、一般の人々が知らない、または実践していない安全な取り扱い手順に関するいくつかのことを知っている必要があります。ESD、長期的な電力損失、コンポーネントのディレーティングなどの問題は、はんだ付け性やシンプルさなど、生産にとってそれほど重要ではないものの下に降格される可能性があります。

IDEおよびプリパッケージソリューションへの親和性は恐ろしいものです。私の意見では、あなたはツールプロバイダーにあまりにも多くの信頼を置いています。ボードがより高価になった場合、ライセンス条項が変更された場合、サーバーがダウンした場合、ソフトウェアは廃止されたと宣言され、ボードの製造元が廃業するなどして、あなたのビジネスは衰退します。また、舞台裏で何が起こっているのかについての理解が不足しています。ドキュメントに記載されている方法で何かが機能しない場合、それはあなたの計画はどうあるべきですか?たとえば、いくつかのArduinoを購入してプログラムし、製品を展開するという考えには、コード保護の計画が欠けています。他の誰かがあなたのコードをマイクロコントローラーからコピーし、設計の関連部分を3分の1の価格で複製して、あなたをアウトセルする可能性があります。
IDEと理解していないものを言語に依存することは、災害のレシピです。

デザインで開発キットを使用すると、製品が高価格、壊れやすく、かさばり、電力を大量に消費し、非効率になります。また、デバッグするのが難しく、サポートするのが面倒であり、あなたはあなたのサプライヤーのなすがままになります。それはあなたが無能に見えるようになります。

ただし、すべてが失われるわけではありません。デザインを開発ボードに実装する場合、誰か(チームの内外を問わず)にカスタマイズしてこれらの欠陥を取り除くのは簡単です。チームが不足している場合は、チームを雇うか、請負業者を雇うか、または設計会社に任せてください。


1
生産は数千を意味する必要はありません。数十から数百個のオーダーで販売される可能性のある高度に専門化された機器には多くのエンジニアリングがあり、明らかにそれはかなり高い価格で販売されるか、誰もそれをやってお金を稼ぐことはないでしょう。このような業界は、ニーズに迅速に対応することに重点を置いており、数か月を費やしてBOMからすべてのドルを引き出すことに重点を置いていません。
Chris Stratton、

2
@reemrevnivek-あなたと私は完全に異なる世界で働いていると思います。私が生産部品について言及するとき、それは顧客にリリースされるものであり、それは数万、数千、または数百ではなく、1から20の数量である可能性があります。一部を50ドルから5ドルに減らすことができれば、開発にさらに3か月を費やさなければならないのであれば、私はあまり気にすることができません。また、誰かがコードをコピーしてもかまいません。
デイブ

1
あなたは本当に良い点を持ち出しました、そして私はあなたのインプットを評価します。あなたの答えは少し極端だったと思いますし、あなたはこの問題についてはっきりと意見を述べていますが、そこから要点を抽出することができます。
デイブ

2
@デイブ-申し訳ありませんが、私は意識的にそれを主張したり極端にしないようにしようとしました。これは、何度か読み直して編集した後の状態です。しかし、「生産」という言葉は(私が操作したすべての状況で、主に自動車OEMサプライヤーとして)何千もの部品を意味するという私の発言を裏付けています。フードを開けてArduinoがファンコントローラーにハッキングされたのを想像できますか?いいえ、それには正当な理由があります。私はそれらの理由のいくつかを挙げようとしました。
ケビンフェルメール

1
@reemrevinek-はは!攻撃は行われません。私はこの質問で多くの視点を得ることを望んでいました。私の環境はまったく異なります。非常に高価なカスタム製品をいくつか販売しているので、組み込みボードのような部品は、それよりも高価で開発時間を相殺する場合は問題ありません。現在、Netduinoをプロトタイピングの概念にのみ使用していますが、とにかくそれをディスプレイコントローラーで使用するだけなので、おそらく製品に組み込むことができると思いました。私は確かにカスタムボードを持っている方が良い/より専門的であることに同意しますが、意見を聞きたかったのです。
デイブ

4

Arduinoボードを製品(大規模生産ではない)で使用しましたが、今後は使用しません。Arduinoのボードは、非常に閉じたエコシステムに向けられています(非オープンソースソフトウェアでは、この言葉の意味)。たとえば、開発ボードのヘッダーに引き出されていないピンを使用する必要があるためにArduinoエコシステムから「一歩踏み出す」と、Arduinoのすべての利点がすぐに失われます。ボードを変更して、ピンを既存のヘッダーに移動するか、何らかの方法で新しいヘッダーを追加する必要があります。これはおそらく、既存のシールドやArduinoのソフトウェアライブラリさえも使用できないことを意味します。これが、ボードのメリットのほとんどです。Arduino Megaでこれをしなければなりませんでした。

また、ボードは巨大で他のPCBとの統合が容易ではありません。アプリケーションのメインボードを、選択したエンクロージャーの取り付け穴があったArduino Megaのシールドと同等に作成しました。そのため、ボードに配置したヘッダーにArduino Megaを差し込みました。しかし、これは対応するために上下のサイズが多く、開発ボードのサイズのために多くの無駄なスペースがありました。私はそこにあったものの半分を必要としなかった、そしてそれはスペースをとっただけでした。これにより、他の方法では必要となるよりも大きなPCBとエンクロージャが必要になりました。それは無駄なお金です。


1
arduino(さらにはアーム式)の設計は非常にシンプルなので、PCBをデジタルロジックに適したものにしてアクセソライズする場合は、プロセッサも含めることができます。PCBをまったく作成しない場合、または基板上にデジタルパーツを必要としない、片面または特別なアナログまたはRFテクノロジでPCBを作成する場合、それらはより魅力的であり、コントローラボードも、それらを購入する(さらには手直しする)よりも費用がかかります。
Chris Stratton、

1
クリス確かに。PCBを自分で作成する場合は、PCBでPCBを再作成するだけではなく、Arduinoボードを追加してもほとんど意味がないことを誰もが知っているはずです。
AngryEE、2011

Arduino環境が制限要因になる場合は、GCC、BASCOM、AvrCoなどの他のAVRコンパイラをいつでも使用して、同じArduinoボード上で動作するファームウェアを作成できます...
avra

4

Arduinos&coはプロトタイピングおよび評価プラットフォームです。そのため、比較的小規模な生産工程の基礎としても、単に経済的に実行可能ではありません。彼らは教育やアイデアのモックアップに最適ですが、最終的な使用に最適ではない既製のサブアセンブリのコストを負担しなければならない場合、製品はすぐに沈んでしまいます。

2つのボードのコストと接続に失敗するリスクを負うよりも、duinoの必須要素と補助回路を含む新しいボードを作成する方がはるかに良いでしょう。

Visual Studioと.netに関しては、他の人とは触れません。Arduinoプロジェクト自体の精神のようなもので、プラットフォームやメーカーにとらわれない何かのために行きます。


1
私はまだそれがすべてあなたの製品のコストに依存すると信じています。* duinoで本当に説得力のあるものを作成することが可能であり、それが100万米ドルのプロジェクトのごく一部であり、そのうち3つだけを販売するとします。なぜそれが経済的に実行可能ではないのですか?2度使用するものの開発に何千ドルも費やしたいと思いませんか?
デイブ

2
.NETコメントに関して、私はVisual Studioや.NETを単に使用したくないという人に頻繁に出くわします。個人的には分かりません。Visual Studioは、これまでに使用した中で最高のIDEの1つです。マイクロソフトのツールに偏っているのは確かです。なぜなら、私のツールを使えば、私の仕事をすぐに終わらせることができ、99%の時間で機能するだけです。私は本当にICEで開発ボードの使い方を学ぶ必要がありますが、デバッグ中にブレークポイントを設定できる使い慣れた環境を簡単に使用できることに感謝しています。私の知る限り、Arduinoでそれを行うことはできません。
デイブ

WRTあなたの最初のコメント、私は比較的小さな実行を言いました。進行中のプロトタイプとして、3つの大規模な予算の開発が実行されると思います。クライアントもそうだと思います。そのような状況では、私はArduinoを喜んで使用します。
レオ

1
MS / .netは個人的な経験に基づいています。過去20年ほどの間、私はそこにあるほとんどすべてのプラットフォームを使用してきました。最大の頭痛の種は、常にMS製品にあります。MSは、彼らのやり方が唯一の適切な方法であると想定しているようです。現在、OS X、Ubuntu、Windows 7をすべて開発環境で使用しています。どれを再起動する必要があると思いますか?
レオ

4
Arduinoで使用されるATMegasは、debugwireを介したデバッグをサポートします。Arduinoのリセットピンハードウェアに互換性があるかどうかはわかりませんが、そうでない場合は、ピンが1つしかないため、ハッキングにそれほど時間はかかりません。他の人のボードの使用に関するもう1つの潜在的な主要な問題は、EMCやFCCの認定などの問題が気になる場合です
mikeselectricstuff

3

一般的に言えば、既成の製品を使用することに問題はありません。我々は、すべてのいくつかのレベルでこれを行う、私はArduinoの-嫌いでもタフで、自分のチップを設計していないと思い、いくつかの高いボリュームレベル経済的な意味になるだろう。

それは常にコスト、スケジュール、品質(そしておそらく長期的な可用性も)に要約されます。Arduinoがカスタムボードよりもこれらの基準を満たしている場合、選択は非常に簡単です。

難しい部分は、特にあなたのボリュームについて、正しい数値を取得することです。しかし、正しい数値と少しの数学を使用すると、Uuisingとカスタムボードのどちらを使用するかを選択するための損益分岐点が得られます。それがあなたの期待をはるかに超えている場合、またはそれ以下の場合、選択は簡単です。そのため、「必ずArduinoを使用する」または「常にカスタムボードを使用する」というアドバイスはすべて忘れてください。どちらも特定のボリュームレベルに属する考え方に縛られています。独自の計算を行います。

Arduinoに関する特定の知識はありません。たとえば、品質要件を満たしているかどうかを自分で判断する必要があります。


2

あなたがこれの予算と仕事を正当化するのに十分な大きさの生産があれば、カスタムメイドのボードは素晴らしいです。それ以外の場合は、Arduino、Netduino、Fez Domino、SBCボード(PC104やさまざまなITX形式など)のような棚の製品を使い続けます。カスタムAVR / Arduinoボードの作成はそれほど複雑ではありませんが、Netduinoに大きな変更を加えたり、一部のLinuxボード(Gumstixなど)を設計(および後でサポート)したりするには、専門家が必要で、数万ドル以上のコストがかかります。困難な作業の大部分を他の人に行わせたい場合、その一部だけをカスタマイズしたい場合は、モジュール魔法の 言葉です。


私は間違いなくあなたに同意しますが、ある時点でまだPCBが必要です。* duinoや他の人が信号と電力を取り出すための単純なPCBを作成するのに十分なスキルがあるので、少なくともそれはまだかなり安いです。
デイブ

何千も必要ない場合は安く、さらに多くの電力が必要な場合は、上記のリンクのようなモジュールもいいです。おそらく、電圧低下検出、eepromに書き込む場合の電力障害、信頼性の高い電源、および特定のアプリケーションに依存するその他の多くのことに対処する必要があることに注意してください。
avra
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.