0

コントローラーのリファクタリング/リワークのために、C アプリケーション内に Python インタープリターを埋め込む必要がありました。Python 関数を呼び出して、Python にオブジェクトを渡したり取得したりできるようになりました。

Python コードはロボットのコントローラーです (現在シミュレートされています)。これは、私が行っている比較のためにいくつかの C コードを利用する必要があります。

以前は、Python コードがオブジェクトを作成し、センサーを読み取り、制御コードを実行し、出力をモーターに書き込んでいました。制御コードを除くこれらすべてを C で行う必要があります。私が抱えている問題は、(Python の) init 関数で作成されたオブジェクトが、制御コードを実行するときに存在しなくなっていることです。

これを解決する最善の方法は何ですか? 私の考えは、init 関数からコントローラーを返し、それらへの参照を C に格納し、呼び出されるたびにコントローラーへの参照を渡すことでした。

助けてくれてありがとう。

4

1 に答える 1

1

これはあなたが望む答えではないかもしれませんが、C アプリケーション内にインタープリターを埋め込む以外に、C と Python を操作する方法があります。

つまり、反対のことをしませんか?Python 用の C ライブラリを作成しますか? アプリケーションの一般的なフローを Python で制御できます。Python の方がはるかに快適で、必要に応じていつでも C コードを呼び出すことができます。

繰り返しますが、私はあなたの実際の質問に実際に取り組んでいるわけではないので、遠慮なく無視してください。

于 2010-10-07T17:09:41.917 に答える