Linuxでの制御開発について

このQ&Aのポイント
  • Linuxでの制御開発について、開発環境や実行環境に余計な労力をかけたくない方への解決策を探しています。
  • Contec社は一部製品のLinux対応をサポートしており、期待を持っています。
  • Linux環境でPCからの制御開発を行うために必要な機能や実現例についてアドバイスをいただけると嬉しいです。
回答を見る
  • ベストアンサー

Linuxでの制御開発について

いつもお世話になっております。 Contec製品などのインターフェースを使用してPCから外部への制御開発をしています。 ここ最近新しいWindowsが発売を控えているようですが、それに伴って今後販売されるPCの実装OSや、周辺機器も移行していくと思うのです。 正直新OS基準の周辺機器への対応には開発環境・実行環境ともに余計な労力がかかるため、短期的に仕様が変わるOSやハードウェアに対する開発を避けたい気持があります。 そこでできるだけ上記に依存しない(10年間程度)開発を続けるために、安易ではありますがプラットフォームをLinuxに移行することを考えています。 しかしながら、あまりLinux環境でPCからの制御開発を行っている文献を見つけられていません。ただ冒頭で述べたContec社は一部製品のLinux対応をサポートしているため、幾ばかりかの期待を持っています。 私が必要としている機能は、 1.ユーザインタフェースとして、画像や動画を成果物上で再生できる 2.PC(マザーボード)が実装している外部インターフェースを利用できる 3.OSのバージョンとコンパイラが長期的に対応し続ける 4.データファイル(形式は不問)をWindowsと変換無しで閲覧・編集できる 5.開発言語は問わないが、Windowsライクなフォームアプリケーションも作成ができる これらはPCアプリケーションの開発者としては夢のような話かもしれませんが、もし実現されている方がおられましたら、実例などご教授いただけたら良いなと思っています。 宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • mac_res
  • ベストアンサー率36% (568/1571)
回答No.3

>LinuxPC上での処理は、あくまで温度監視のみのシステムで、センサーに対するアクチュエータの実際のリアクションはマイコン側で完結しているのですか? 私の作ったシステムではさほどのリアルタイム性は要求されないものでしたので、制御はLinuxマシンを使ってループを構成していました。 >マイコン開発の実績もない会社なのですが、実装されているマイコンはmac_resさんの自社開発品なのでしょうか・・・? そうです。 >PC側の制御の比率がどのくらいか 完全にフロントエンドとして、温度、湿度、日照、pH、電気伝導度等の入力と接点出力として動作しています。 制御ループは全部Linuxで行っています。 >制御部開発でどのくらいのコストが掛かっているか というわけで、ハード的にはただのPCです。マイコン部は単独でループを組める自社製品のハードをファームウエアを変えることで流用しました。 >動画はツールを使用されていないのでしょうか? Linux上のjpegをまとめてmpegを作るフリーソフトで動画を製作し、Windows MultiMedia Playerで表示させました。

natural_aspirate
質問者

お礼

mac_resさん、お返事遅くなってすみません・・・ 最後に述べられている動画にmpegを使用しているのはちょっと意外でした・・・Web上であればLinuxでもmpegを再生できるとは、まったくの不勉強です・・・ 今日イーサネットで制御アプリケーション開発をできる参考書を購入してみました。巷のPLCメーカも外部とイーサネット通信するユニットが販売されているようで、この手法は最早主流になっているようですね。うちの会社が遅れているようでちょっと焦りがありますが、この方向での開発も今後移行可能なように準備したいと思います。 長い期間親切に対応していただき、ありがとうございました。心から感謝します。

その他の回答 (2)

  • mac_res
  • ベストアンサー率36% (568/1571)
回答No.2

>実際の制御部品はどんな言語なのでしょうか・・・ Linux上のApacheのCGI製作にはC、制御のフロントエンドとなるマイコン部にはH8/300をCでプログラムしました。 要するに全部Cです。 >よりリアルタイム性を求められる計測・制御を行うにあたり、LANやシリアル通信では不安があるのですが・・・ UDPでも間に合わない場合、PCI/ISA BUSにA/Dをじか付けしてもLinuxではリアルタイム性に問題があるのではないでしょうか? RT-Linuxを使うという手もありますが、リアルタイム性を求められる部分は全て外付けのマイコンに任してしまうほうが安定で速い気がします。 温室とは別のJOBですが、DSPボードをシリアル通信でLinuxマシンに繋いだこともあります。 このときはCGIでは無くX Window GUIを作りましたが。

natural_aspirate
質問者

お礼

mac_resさん、再度ご回答感謝致します。 >UDPでも間に合わない場合、PCI/ISA BUSにA/Dをじか付けしてもLinuxではリアルタイム性に問題があるのではないでしょうか? 実はイーサネットによるデータ送信は、VBのSockコントロールなどでしか実績がなく、仰られるようなUDPやTCPによる直接的な制御は全くの未経験です・・・自分の知識では、PCIバスにデータサンプリングやA/Dを行うボードを使用することが最速と思っていたのですが、そうでもないようですね・・・この点ではどうやら文献(図書など)があるようなので、勉強させていただきます。 ご迷惑かもしれませんが、#1から述べられているシステムで再度質問させてください。LinuxPC上での処理は、あくまで温度監視のみのシステムで、センサーに対するアクチュエータの実際のリアクションはマイコン側で完結しているのですか?また、マイコン開発の実績もない会社なのですが、実装されているマイコンはmac_resさんの自社開発品なのでしょうか・・・?この質問の主旨ですが、PC側の制御の比率がどのくらいか、と、制御部開発でどのくらいのコストが掛かっているか(ちょっと脱線なのですが)知りたく思います。 最後にもう一つ、Linuxでのグラフィック表示はWebPageを使用した場合、専用ソフトは使わなかったと仰られましたが、動画はツールを使用されていないのでしょうか?うちではメディアプレーヤーファイルを使用していて、それの改版時毎にうまく動かなくなって苦労しました・・・ 長々とすみません・・・ご容赦ください。

  • mac_res
  • ベストアンサー率36% (568/1571)
回答No.1

Linuxを使って温室制御をしたことがあります。 1. I/OはRS-232CをRS-422にコンバートして、マイコンを介して制御した。 2. GUIはすべてWebのCGIを使いPDAからPin Conp@ct-Offce ModeのPHS経由、もしくはLAN経由でWindows PCのブラウザから行うようにした。 3. グラフィック表示も、動画を含めて、自動的にWeb pageを生成し、専用ソフトは使わなかった。 この方針でいけば、どうハードウエアが変化しても追従できるでしょう。まあ今なら、LAN経由でマイコンまたはプログラマブルシーケンサを制御したほうがよいかもしれません。 何しろ汎用パソコンの世代交代は早いですからね。製品寿命が長い、産業用制御機に用いるのは、ハードウエア/ソフトウエアとも依存性を排除しておかないと作り続けることができなくなってしまいます。 その点、すべての操作をCGIにしたのは成功だったと思います。

natural_aspirate
質問者

お礼

mac_resさん、ご回答ありがとうございます。お返事が遅くなってすみません・・・ 仰る通り、開発環境(プラットフォーム含め)と実行環境のどちらか一方でも変化すると製作手法もかなり方向修正が必要になってしまいます。 CGIでユーザインタフェースを作成されたそうですが、実際の制御部品はどんな言語なのでしょうか・・・ また、大変参考になるご回答なのですが、よりリアルタイム性を求められる計測・制御を行うにあたり、LANやシリアル通信では不安があるのですが・・・

関連するQ&A

  • linuxでipadアプリを開発できるでしょうか?

    アンドロイドアプリならばlinuxでも開発出来ると予想されますが linux OSのPCにipadアプリの開発環境を入れることはできるでしょうか?

  • Linux対応

    周辺機器がLinuxで使えないのはメーカーが、ドライバーがLinuxに対応させてないのでWindowsのようにOSが持ってれば使えるんですね。無線LAN関連Adapter,アプリケーションソフトはなぜチップセットですか

  • LinuxでのC言語開発に便利な統合開発環境

    Linux OS上で、C言語の開発をすることになりました。 そこで、質問なのですが、使い勝手のよい便利な統合開発環境はありますでしょうか?また、その際に使われているLinuxのディストリビューションは何でしょうか? 私自身、以下の開発環境を実装してみましたが、非常に動作が重く、とても開発環境として使っていけるとは思えませんでした。 統合開発環境 Eclipse3.3 JAVA実行環境 jre1.6 Linuxのディストリビューションは Vine Linux3.2 です。 現状、試行錯誤しながら、どのディストリビューションとどの開発環境の組み合わせがいいかをあれこれ検証しているだけの時間があまりない状況です。そこで、できればみなさんの構築実績のある組み合わせをお教えいただければと思っております。(また、それに伴う構築手順のHPなどがあれば幸いです。) 大変恐縮ではありますが、何卒宜しくお願いいたします。

  • Linuxでリアルタイム制御するには

    PCからAD/DAボードを介して小型のロボットをリアルタイム制御したいと思っています.これまではWindowsPCにMATLABをいれて,MATLABでプログラムを作って制御していたのですが,LinuxでMATLABを使わずにリアルタイム制御したいと思っています. そこで質問ですが,Linuxでリアルタイム制御するには,どのようなOSが必要なのでしょうか?Ubuntuで大丈夫でしょうか?また,PCにはOSの他に何を入れる必要があるのでしょうか?(これまではWindowsPCにMATLABとそのToolBoxを入れるだけでリアルタイム制御していたので,それ以外のやり方について全くの無知です.) アドバイス頂ければ幸いです.よろしくお願い致します.

  • WindowsかLinuxでのiOSアプリ開発

    Windows利用者です。 Objective-CでiOSアプリの開発をしてみたいと考えているのですが、Windowsで開発環境を整えるのは手間がかかりそうですし、Macは持っていないので、Linuxで開発できないかと考えています。 (1)iOSアプリの開発をする場合、WindowsとLinuxのどちらが開発環境構築の手間がかからないでしょうか? (2)Linuxで開発する場合、どのOSだと開発しやすいでしょうか? 私が持っているのはUbuntuのみですが、Ubuntuよりも楽なOSがあるなら、そちらをインストールしようと思います。

  • 既存Linuxサーバーを新サーバに移行する方法

    現在、ある会社でLinuxでサーバーの管理をしています。 このサーバーのハードディスクやCPU用のファンから大きな音が鳴り出し、壊れそうなので、サーバーを新サーバーに移行する必要がでてきました。 このサーバーは、依然管理していた人が構築したのですが、いろいろな彼が作ったWebアプリケーション動いており、このアプリケーションはその作りからして、新しくOSを入れたところにインストールするのが難しい状況です。 なので、システムデータ込みで、データを丸ごと移行するか、何かで対応したんですけど、どうするのがベストでしょうか? 移行元PCは、Linux Fedra 移行先PCは、どんなOSでも最適なもので結構です。

  • Linuxが採用された製品とシェアを伸ばす理由(2010.8.10)

    Linuxが採用された製品とシェアを伸ばす理由(2010.8.10) 電気機器業界にてLinuxでの開発が世界的に広がってきているようですが どういった製品が市場に出ているのでしょうか。 (1)開発環境がLinuxの製品 (2)マイコンのOSにLinuxを組み込んだ製品 それぞれについて教えていただきたいです。 またLinuxでの開発の採用が進んでいる一番理由は  他のOSに比べ、コストの低減が可能 ということでしょうか。

  • リナックスでのソフト開発

    お世話になります。 現在、社内にて各部門が使用する管理ソフトを マイクロソフトOfficeの各アプリケーションをベースに開発しているものです。 現在使用しているのは、Office2000で、Excel2000がほとんどです。 カスタマイズはVBAを使用しております。 最近、Office2000自体も入手困難になってしまい、また、次期OSWindows7になった場合、マシンの方もOffice2000が稼動できるモノが入手できるか危惧しています。 そこで、今のうちから対策を考えたいと思い、相談させていただいた次第です。 現在の選択しとしては、 1)Officeの新バージョンで開発 2)リナックスで開発 の二つを考えています。 私自身、リナックスは全く使用したことがありません。 また、私が使えるプログラムはVBAのみです。 また、Officeの場合、バージョンアップの期間が短く、せっかく作ったソフトも今回のように何世代かバージョンが新しくなると、officeやハードの入手の面において困ってしまいます。 希望としては、開発したソフトは出来るだけ長い間使用したいと思っております。 そこで質問ですが、 Q1)リナックスには、Excel2000程度の機能のついた表計算ソフトはあるでしょうか? Q2)リナックスは、Officeのようにバージョンアップしたものが、古いOSで使用できなくなったすることがあるでしょうか? Q3)リナックスの旧バージョンは入手困難になることはあるでしょうか? Q4)リナックスの表計算ソフトはExcelのようにVBAにてカスタマイズできる環境にあるでしょうか? Q5) このほかにご意見・アドバイスあればよろしくお願い致します。 以上、よろしくお願い致します。

  • Linux環境でのprefs.xmlの設置

    現在、あるJavaで作られたアプリケーションの開発環境をUnixからLinuxへ移行しています。元々.java/.userPrefs/batch/contextの下に設定ファイルprefs.xmlがあります。但し、Linux環境ではそのファイルが読めなくなってしまいました。どのように変更すればよろしいでしょうか。ご存知の方、ぜひ教えてください。

  • PCに対応する周辺機器について

    PCに対応した周辺機器を調べるとき、目的の周辺機器から対応したPCを検索することができる場合もありますが、少し古いPCになると対応しているのかどうか分かりません。 基本的には、周辺機器の仕様を見て対応インタフェースと対応OSさえPCと合えば、その周辺機器はPCで動作すると見ていいのでしょうか? 回答よろしくお願いします。