ラズベリーパイについて

アプリ開発に関する質問 ラズベリーパイについて

  • このトピックには4件の返信、2人の参加者があり、最後にlaboにより4年、 5ヶ月前に更新されました。
5件の投稿を表示中 - 1 - 5件目 (全5件中)
  • 投稿者
    投稿
  • #1282
    labo
    参加者

    いつもお世話になっています。
    質問なんですが、LEDをwhileでずっと光らせるプログラムを作りました。
    そして、rc.localで起動すると自動的に処理を行うようにしました。
    動作自体も問題なく動いたのですが、3日間ずっと電源を付けたままにすると消えてしまっていました。
    他に、ボタンを押して話すプログラムなどを同じようにrc.localで試したところ、数日で動かなくなりました。

    ラズベリーパイに問題があるのかなと思うのですが、どうでしょうか。ラズベリーパイは2と3の両方試しました。
    よろしくお願いします。

    0
    #1283
    加藤@SPI
    参加者

    ご質問頂きまして、ありがとうございます。

    頂いた情報からは、判断が難しいので、もう少し情報を頂きたいのですが、
    アプリケーションの内容・接続形態等をもう少し詳しく教えて頂けますでしょうか。

    明日から1/4日まで冬期休暇に入りますので、1/5以降、状況が分かりましたら
    回答させて頂きたいと思います。

    よろしくお願いします。

    0
    #1316
    labo
    参加者

    返信していただき、ありがとうございます。

    アプリケーションの内容
    ほっぺのLEDを0.2秒間光らせることをwhile文で繰り返しているだけのアプリケーションです。
    ラズベリーパイの負担も考え、0.1秒間のsleepも入れております。

    接続形態は本サイトのチュートリアルにある、pythonを使ったPaPeRo i 制御用WebSocket通信アドオンシナリオを使用させていただいております。

    よろしくお願いします。

    0
    #1317
    加藤@SPI
    参加者

    ご連絡頂きまして、ありがとうございます。

    2点ほど確認させて頂けますでしょうか。

    1、PaPeRo i からの応答メッセージの受信は行っておりますでしょうか。
    send_turn_led_on関数でLED点灯コマンドを送信すると、その時の応答としてturnLedOnResレスポンスが返信され、
    頬LED点灯動作終了時にcheekFinishイベントが送信されます。
    今回の場合、点灯動作終了前に次の点灯コマンドを送信しているようですので、cheekFinishは発生しないかも
    しれませんが、turnLedOnResは必ず返信されます。
    この返信に関しまして、その内容を使用する必要がなくても受信自体は行わないと、受信バッファが溢れて
    しまい、通信が正常にできなくなる可能性があります。

    2、LEDを点灯させ続ける事が目的でしたら、例えば
    papero.send_turn_led_on(“cheek”, [“R3R3”, “2”])
    という関数呼び出しに引数を追加して
    papero.send_turn_led_on(“cheek”, [“R3R3”, “2”], repeat=True)
    とすれば、呼び出しを繰り返さなくても点灯が維持されると思うのですが、
    この方法では問題ございますでしょうか。

    0
    #1325
    labo
    参加者

    返信ありがとうございます。

    おっしゃられた通り、問題は受信バッファが溢れたことが原因でした。
    よってこの方法で解決できました。
    ご指導ありがとうございました。

    0
5件の投稿を表示中 - 1 - 5件目 (全5件中)
  • このトピックに返信するにはログインが必要です。