質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
シリアルポート

シリアルポートは一度に一ビットごと移行される物理的なインターフェイスです。一般的には、9ピンのd-subコネクタであるRS-232を指します。

Arduino

Arduinoは、AVRマイコン、単純なI/O(入出力)ポートを備えた基板、C言語を元としたArduinoのプログラム言語と、それを実装した統合開発環境から構成されたシステムです。

Q&A

解決済

2回答

1016閲覧

Aruinoでシリアルポートを開くとチャタリングが起きる

sasamata

総合スコア13

シリアルポート

シリアルポートは一度に一ビットごと移行される物理的なインターフェイスです。一般的には、9ピンのd-subコネクタであるRS-232を指します。

Arduino

Arduinoは、AVRマイコン、単純なI/O(入出力)ポートを備えた基板、C言語を元としたArduinoのプログラム言語と、それを実装した統合開発環境から構成されたシステムです。

0グッド

0クリップ

投稿2020/05/22 07:44

Arduinoでシリアルポートを開くとチャタリングが発生します。
何が原因なんでしょうか。
また、回避策はあるのでしょうか?
制御は、pyhonで行っています。

以下、ソースコードです。
void setup()
{
Serial.begin(9600); // シリアル通信初期化(9600bps)
}

void loop()
{
SOL_ON();
delay(100) ;
}

//ソレノイドON
void SOL_ON(void)
{
if (Serial.available() > 0) // シリアル通信でデータが送られてくるまで待つ
{
char c = Serial.read(); // 一文字分データを取り出す。
if (c == 'o') // 'O'が送られてきたらLEDを点灯させる
{
digitalWrite(13, HIGH);
}
else if(c == 'f') // fが送られてきたらLEDを消灯させる
{
digitalWrite(13, LOW);
}
}
}

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ozwk

2020/05/22 08:03 編集

* ソレノイドなんですか?LEDなんですか? * なにがチャタリングするんですか? * チャタリングとは「on/offの切り替わり時に何回かon/offが高速で切り替わること」ですが、発生している問題はチャタリングですか? * 「Arduinoでシリアルポートを開く」とはなんですか? pythonでopen()したときですか?
sasamata

2020/05/22 08:06

言葉足らずで申し訳ありません。 対象はソレノイドなのですが、13pinのLEDも同時にモニタしています。 pythonでopen()した場合も発生します。 念のため、Arudinoのシリアルモニタで、”o"を入力した場合でも発生しました。
ozwk

2020/05/22 08:11

各digitalWriteの下にSerial.println()を置き、on/off状態をPCに通知したときどうなりますか?
sasamata

2020/05/22 09:16

ありがとうございます。 やってみましたが、 ツールのシリアルモニタを開いた瞬間、LED13番がチャリリング点滅します。
thkana

2020/05/22 11:48

チャタリングという言葉をオレサマ定義で使うのを止めて下さい。機械接点が付いたり離れたりする現象のことです。今回は機械接点はありません。 勝手な言葉を使わず、起こっていることをちゃんと説明して下さい。 ポートのオープン時に一旦Arduinoにリセットがかかる場合はありますが、それで一旦消灯する、とかそういうことを言っているのですか?
guest

回答2

0

ベストアンサー

まずは、13ピンを出力ポートに設定してください
入力ポートのままだと、単にプルアップ機能の ON/OFF にすぎません

void setup() { // put your setup code here, to run once: Serial.begin( 9600 ); pinMode( 13,OUTPUT ); }

投稿2020/05/22 10:02

koujikuu

総合スコア401

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

LEDを13pinから12pinに接続を変えたところ、現象はなくなりました。
皆様、ご丁寧なアドバイス、ありがとうございました。

投稿2020/05/22 11:46

sasamata

総合スコア13

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問