質問
私はいくつかの組み込みデバイスの設計を始めたばかりで、リソースを探しています。
私ができるようにしたいのは、GPS 受信機を軽量の SBC または mini-ITX の x86 ベースのコンピューターに接続し、遠隔操作された車両の位置/進行状況を追跡することです。
理想的には、これは趣味の半自動運転車の構築に変わる可能性があります。
しかし、私が始める必要があるのは、GPS プログラミング用の開発ボードです。
どのようなボード/パッケージを使用しましたか?また、それらの [できればオープンソース] 開発はどこで見つけられますか?
解決
オープンエンベデッド 始めるのに最適な場所です。多くの組み込み製品は ARM やその他のプロセッサを使用しているため、クロスコンパイルは非常に重要です。 ビルドルート これは、小規模システム用のカスタム Linux カーネルを構築するためのもう 1 つのリソースです。
また、やりたいことを実現するツールを備えたシングル ボード コンピューター (SBC) を提供するメーカーもたくさんあります。Google で「SBC Linux」を検索すれば、宝の山が見つかるはずです。
Linuxデバイス Linux 組み込みコミュニティの動向を常に把握しており、役立つ製品やソフトウェアを紹介する優れた記事がいくつか見つかるはずです。
Debian には組み込みビルドがありますが、それについてはまだ調査していません。
に関する本が何冊かあります 組み込みLinux そのルートを進みたい場合は利用可能です。
GPS 受信機はシリアル ポートまたは USB ポートに接続するだけで、データの NMEA ストリームを提供します。このストリームは GPSD で解析でき、いくつかのプログラムは GPSD を通じてそれにアクセスできます。非常にシンプルなテキストベースの形式です。
私は通常の PC マザーボードと、組み込みシステム (GPS、セルラーなど) 用の Atmel AT91 プロセッサを使用してきました。今は情報が溢れていて、情報を得るのにお金はかかりません。新しいプロジェクトを開始する場合は、Atmel の AVR32 プロセッサを検討します。これらは非常に愛好家に優しく、AVR32 アーキテクチャ上の Linux に対して多くのコミュニティ サポートを提供します。OS を使用しないルートを選択し、プロセッサ上で単一のプログラムを実行したい場合は、無料の GCC コンパイラと重要なフレームワークとサンプルが提供されます。
幸運を!
-アダム
他のヒント
これを探すときに検索するキーワードは「NMEA」です。私は長い間これに関して何もしていませんでしたが、いくつかのボードやその他のハードウェアに関する優れたソースを以下に示します。
Holux GPS 受信機 (samsung q1 用に設計) はうまくいきました。シリアル ポート経由で非常に簡単に接続するだけで、NMEA 文字列を読み取ることができます。
どの OS をターゲットにしていますか?Linux の場合、利用可能な GPS ライブラリが多数あります (ここに良いリストがあります). GPSd そして Gpsドライブ 私が見た中で最も人気のある 2 つです。
軽量/組み込み用途に特化した GPS デバイスは見たことがありませんが、消費者向け GPS デバイスの多くには、おそらく機能する可能性のある USB 接続が用意されています (ローエンドのものには注意してください。通常、コンピュータ インターフェイスがありません)。
シリアル ポートから NMEA を読み取って解析する、単純な古い C プロジェクトから始めることをお勧めします。これは Windows または Linux で実行できます。
私は通常、このようなプロジェクトを次のような一連の小さなプロジェクトに分割します。
- シリアルポートからNMEAを読み、解析します
- リモートデバイスから追跡システムサーバーへのシリアル /ネットワークリンクを確立する
- コンポーネントを統合する
ウィキペディアに良い記事があります NMEA プロトコル。アダムが指摘するように、実際には非常に単純です。
サーキットセラー誌でもよくこのような企画をやっています。
何をしたいかに応じて、さまざまな規模のターゲットを検討する必要があります。小型低電力 (バッテリー) のものには Atmel AVR を使用してください。おそらく、コンセプトを大まかに説明したいだけで、インターネットに WiFi (またはセルラー) が必要な場合は、古いラップトップで Linux を使用するかもしれません。
その後、ラップトップ Linux プロトタイプをトリミングして、組み込み Cinux システムに移植することで、バッテリー使用量をさらに削減し、後で携帯性を向上させることができます。(アトメルほど低くはありませんが)。
Linux でのプログラミングに慣れている場合は、Gumstix シリーズの小型コンピューターをお勧めします。 http://www.gumstix.com/
vedex マザーボードを GPSstix 拡張ボードと組み合わせて、十分にサポートされたプログラミング環境を備えた小型 GPS レシーバーを作成できます。
私は提案します GPSバベル GPS受信機と通信します。
GPSバベル
- ウェイポイント、トラック、ルートを処理します。
- 多くのフォーマットを知っています (これが Babel という名前の説明になっています)。
- Windows、Linux、OSX、
- 無料。
ここにいる何人かは、GPS なしで 149 ドルかかる埋め込み型デバイス、gumstix のようなデバイスを提案しています。それはちょっと分かりません。既製の TomTom には、ARM 上で実行される Linux、内蔵 GPS、大量のフラッシュ、バッテリー、画面が付属しています。大量生産による価格の優位性を打ち破るのは困難です。趣味のプロジェクトでは、付属の地図は必要ありませんが、気にする人はいません。