A 回答 (5件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
問題を取り違えていなかったようで安心しました。
やはり入力ピンのインピーダンスが高くてノイズによりピンの電圧が暴れているようですね。
デジタルリードはその命令を実行した瞬間だけしか読み込みませんが、割り込み検知は常に信号の変化を監視しています。
この違いで捕まえきれなかったのでしょう。
ソフトによるバウンス除去なんかしていたらそれでフィルタされて絶対に捕まえられません。
ピンにプルアップ(プルダウン)抵抗やバイパスコンデンサなどでノイズに対するインピーダンスを下げるのが基本でしょう。
イグニッションノイズ相手ならフォトカプラくらい使うのは商用では当たり前です。
電源ラインが揺れていることも考えられます。
これ以上の具体策は回路図やセンサーの情報が無いと何とも・・・
この回答へのお礼
お礼日時:2019/02/07 21:44
とりあえず1.5kΩが手持ちにあったのでそれを入力ピンに繋いでかなり収まりました。後はアルミケースを購入して入れてみます。ホールセンサーがlowの信号なので
10kΩでプルアップしました。マイコン初心者なので助かりました、ありがとうございました。
No.3
- 回答日時:
「割り込み入力ピンをデジタルリードしてもノイズ信号らしきものは見られなかったので、入力ピンにノイズは入ってきていないと思う。
しかしイグニッションノイズによって、意図せず割り込みは発生してしまう。」こう言いたかったと思ったのですが、私が読み間違えているのでしょうか?
割り込みピンに割り込み条件となるレベルの電圧なり電圧変化なりが発生すると割り込みが実行されます。意図せず割り込みが発生するならピンにノイズによる電圧が発生しているのです。
「ノイズによって入力ピンに割り込みトリガとなる電圧は発生していない」とどのように確信したのでしょうか?
「デジタルリードしたけど出てこなかった」に対してそれは「出てこなかった」ではなく「見つけられなかった」の間違いではないかと申し上げたかったのですが。
No.2
- 回答日時:
割り込みだろうがdigitalreadだろうが入力ピンの状態を機械として言われたままに読み込みます。
これも予測ですが、digitalreadでノイズが乗らないんじゃなく、乗ったタイミングで読めていないだけ、つまり検証方法でもミスっているのではないかと思えます。
本当にノイズが入力ピンに乗っているのならハード的な問題です。
digitalreadで乗らないと言い切るならそれを検証したコードくらい提示できるはずですよね。
イグニッションノイズなんてほんの一瞬なんですからそうそう捕まえられるものじゃないですよ。
No.1
- 回答日時:
回路もプログラムも無いんじゃ、まず本当にノイズによる誤動作なのかそれすら信用できません。
心から助言を求めるなら、今はできる限りの情報をどうやって示せばいいかに注力すべきかと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript Typescript が必要な理由 1 2023/01/07 11:45
- 工学 画像の電気ノイズ除去のプログラミング 5 2023/07/31 18:48
- その他(趣味・アウトドア・車) Arudino nanoが正常に動作しない原因 1 2022/10/30 18:29
- システム科学 arduino プログラムについて クラブ活動で、 タイヤ3個とトグルスイッチ2つ、サーボーモータ2 1 2023/01/30 17:04
- 電気工事士 【電気のノイズ】エンジニアから電気のノイズが直流ケーブルに一緒に乗ることはあるので 5 2023/04/06 10:56
- イヤホン・ヘッドホン・補聴器 イヤホンジャックにイヤホンを深く差し込むとノイズが混じります。浅く差し込むとノイズは混じらないのです 7 2023/06/10 03:13
- イヤホン・ヘッドホン・補聴器 1ヶ月ほどまえにshure se215というイヤホンを購入してpcに差し込んで使用していました。 先 1 2023/07/21 00:32
- その他(自然科学) 科学技術計算の仕事について 2 2023/02/04 18:09
- イヤホン・ヘッドホン・補聴器 ヘッドホンを有線接続してノイズキャンセリング機能をオンにすると、小さくブーっとノイズ音がする。 こん 2 2022/04/01 18:49
- C言語・C++・C# 至急教えてください!プログラミングの問題です。 正の整数nを入力させると、1からnまでの整数を出力し 9 2022/07/16 23:45
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
回数を指定しないで空白行まで...
-
C言語のflagの使い方が分かりま...
-
問題作成のWebアプリの作り方を...
-
バッファリング処理を高速化し...
-
Application.ScreenUpdating = ...
-
JSONで文字列が長い時
-
ACCESS テキストボックスを隙...
-
構造体の各データの表示につい...
-
文字の横にプルダウンを表示さ...
-
メモリをアドレスを直接指定し...
-
[python] 文字列を変数名として...
-
16進の10進変換について
-
セレクトボックスである項目を...
-
swift 文字コードから文字に変...
-
セレクトメニューで2つの項目...
-
C言語について
-
Use of uninitialized value ---
-
セレクトメニューで選んだ値を...
-
【C#】数値の範囲チェックについて
-
formで特定のinputを送信しない...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VB6で、長い時間かかる処理...
-
初回起動のみ判別したい
-
C言語のflagの使い方が分かりま...
-
実行中の変数の中身をイミディ...
-
UWSC SLCTBOXもしくはSELECTに...
-
perl:ループのカウンタ変数の値...
-
arduino の割り込み処理について
-
問題作成のWebアプリの作り方を...
-
VBAのCallステートメントについて
-
処理終了後、他のページへジャ...
-
フラグをたてる、、の意味を教...
-
夕方くらいから急にGoogle検索...
-
HTML
-
SetDlgItemInt( ) c++
-
教えてください。 画像処理のプ...
-
C言語のプログラミング
-
バッファリング処理を高速化し...
-
Pythonでこのプログラミングを...
-
Application.ScreenUpdating = ...
-
JSONで文字列が長い時
おすすめ情報
arduino の近くで点火回路を作動させるとその点火数と同じ信号が入ります。同じ入力を割り込みではなくdigitalreadで読み込むと全くノイズが乗りません。これは割り込み特有の作用かと思います。そこで質問したのです。回路とかプログラム以前の問題かとかと思い質問したのです。
割り込みという特殊な入力に固有の問題化と。
あのですね、イグニッションノイズは連続して出ているのです、ちなみにテストでは一分間に630回の点火信号を出しているのです。その630回をすべて拾っているんです。割り込みの入力はarduinoでは二つの入力ピンだけ許されていますよね、ですから私は「割り込み」とは特別な入力方法なのかと思い質問したのです。タイミングライトはその信号を拾って光るのですが、簡単な構造で拾っています。ある方がイグニッションノイズはマルコーニの無線と同じ構造だからセンサーがなくてもデバイスそのものだけでも反応するときが有るとおっしゃっておりました。信号はパソコンのモニターで確認しているのですがきっちり630rpmと出ています。タコメーターなら正確でいいのですが、私は別なものを作成したいのです。
私もうまく言えないのですが、割り込みでプログラムを書くとセンサーコードを繋げなくてもarduinoは反応してしまいます。それもきれいにイグニッションと同期して。試しに反応が遅いけれどもdigitalreadによるプログラムだと同じ入力ピンでも反応しないのです、センサーを繋げない限り。プラグコードの上にのっけても反応しません。しかし、割り込みでないと正確な信号が得られないので困っているのです。割り込みの時はセンサーを繋げなくても、入力ピンに針金を入れただけでもそれがアンテナになってきれいな信号が入ってしまいます。ちなみに、エンジンをかけると近所迷惑なのでフライスにフルトラ点火の装置を作成してテストしています。フライスにはデジタル回転計をつけているので正確な点火数がわかるのです。実際のエンジンだとポイント点火なのできたないノイズになります。