AVRマイコン総合スレ Part40
■ このスレッドは過去ログ倉庫に格納されています
そんな所にわざわざ金と面積をかける
競争の少ない業界は良いねえ 回路設計とファームは自社でやって、基板のアートワークと製造は外注というところはたくさんあると思う。
タクトスイッチ数十個をマイコンのポートにつないだ基板と言うのも良く来る。
キーマトリクスなんて使わずに多ピンマイコンを使う。
全キーにCR入れる。ダイオードは入れない。
値からして明らかに静電気対策ではなくチャタリング対策。
しかも交換しやすいようリード品指定するところもある。
>>393
スキマ製品だと思うだろう?
大量生産品からインフラ機器までどこにでもあるんだよ。 そうなのか勉強になった
ありがとう
うちはまともな方だってこともわかって良かった まともならハードとソフトの両面で対策すると思うぞ
ソフトでどうとでもできるからと、たかを括った結果、
大量の不具合発生で「特別キャンペーン」やらざるを
えなくなった棒アジとかあるからなぁ
(あれって、韓国メーカーのOEMでしょ?) ほほう、ソフトで対策のできないチャタリングってどんなものがあるの? セットリセットのラッチ使って
セットに入ってバウンド起こしても
セットはセットなのですから
チャタリングしようが何しようがセットでラッチ
リセットに入れたら、ラッチ解除で
即座にOFF!コレ最速最強。是非お勧め♪
by単極双投無双 (6 lゝ、_ .ノ ヽ、__ノ |!/
| ,.' i、 |}
', ,`ー'゙、_ l
\ 、'、v三ツ /
|\ ´ ` , イト、
/ハ ` `二 二´ ´ / |:::ヽ
/::::/ ', : . . : / |:::::::ハヽ
https://twitter.com/ibuki_air
09058644384 スィッチも色々あるので、これでOK、と言うような万能の解決方法は無いと思う。
たとえば、単純なプッシュSWでもオルタネートとモメンタリがあるし、
使い方としても、プッシュオン(立ち上がり)でA処理、長押しでB処理、
プッシュオフ(立ち下がり)でC処理など組み合わせるときがある。
私はハードのCR積分回路と、自由度が高い(応用範囲が広い)ソフトのシフトレジスタ方式で
チャタリング除去している。 ピンポイントな例でも構わないので、
CR積分回路が無かった場合の不具合例を教えてくださいませんか? >>403
ボタンを押した回数を数えたり、ボタンを押す毎にLEDをオン・オフしたりとか。 >>405
もちろん簡単なのはウエイト時間を作るとかチャタリングに対応するコードを書けばできるよ。
でも回路上スイッチからマイコンまでの距離が長く、配線にチャタリング以外の電磁的ノイズが入る環境とかだとCRが入ってたほうが無難だな。 意外とオシロのスイッチがすぐおかしくなるのは気のせいかな
テクトロも中華も反応するけど値がすっとぶ ロータリーエンコーダとかはソフトだけで対応するの結構大変 >>407
磁気式のエンコーダだと経時変化で軸受けのガタ、光式だとそれに加えてホコリでの誤動作も増えてくる。
>>408
ほんと。
サーボモータ制御とか高分解能のエンコーダだとパルスの周波数も相当に高くなるしね。 >>406
その「無難」がわからないんです。「難」があるのはどういう時ですか?
静電気や電磁ノイズからの保護にDやRの存在意義はわかりますがCって? ローパスフィルタかますんだよ。
スパイクノイズやチャタリングで暴れるのをまず抑えてから、シュミットトリガで受けるのが常套手段 スイッチの信号を受ける端子について、接点バウンスによるチャタリングの防止「だけ」が目的なら
コンデンサは要らないかも。 チャタリング以外のノイズが入ってくることを想定すると、
ソフトウェアでは簡単に除去できないことや、ダイオード、抵抗で防げないことは
はありますよね。
どこまでを想定するか、ということもあります。 >>410
CRのローパスフィルタはあらゆる回路の基本中の基本。
一般的なスイッチ(ON/OFF)信号のノイズ除去以外にも、刻々と変化するアナログ信号をA/D変換入力してマイコンで解析計算をする時には、ナイキスト周波数(サンプリング周波数)と言って入力信号の重要な周波数制限があり、この場合は必ず(急峻な肩特性を持つローパス)アナログフィルタを入れる。
細かな用語の定義や理由は各々の単語を検索してみてください。 そうそう、その「防げないことはありますよね 」の具体例が知りたいんです。
何を想定すれば必要となるんでしょう?
散々ノイズ試験やインパルス試験を経験しているのですが、
不幸なことに積分回路の有用性に出会ったことが無いんです。
前出のエンコーダーなどソフトで対策しにくい速度のものは当然除外しますが、
単なる有接点スイッチの入力に積分回路が無いことによって、
ソフトで対策出来ないどんな不具合が隠れているのでしょうか? >>416
自分は、1000V発生させて製品を検査する装置の周りで使うデバイスを作ったことがあるけど
こんときはさすがにスイッチにCR回路つこうた 教科書に異を唱える真のプロ降臨!
…と思ってたら
>静電気や電磁ノイズからの保護にDやRの存在意義はわかりますがCって?
これで萎えた >>416
○強い静電気が回路に飛び込むケース。
端子間短い抵抗は放電で飛び越える。
保護ダイオードが壊れる。
でもセラコンは壊れにくい。最後の砦
○継続するノイズ
たとえば、スイッチのON/OFF検出を0.1秒以内に判定する場合で
数秒にわたって継続する高周波ノイズだと、、ソフトウェアでは除去するのは難しい。
場合によっては、保護ダイオードで整流されてDC値がふらふらしたり。
逆にいえば、そんなケースはありえない、というふうになっていれば考慮する必要はないのです。
筐体やスイッチの構造、配線の配慮で、「回路に静電気放電の電流が流れることはありえない」となっていたり、
「スイッチから入力デバイスまでの距離も短く、相応のシールドもあるから、そんな信号はのらない」と言えるものなら
コンデンサはなくても良いでしょうね。
チャタリングを防止するようなフィルターなんか使うより
ソフトの方が応答速度は速く出来ます
キーのCRはチャタリングよりずっと高周波な物の除去に使うもの キーの場合
高周波ノイズの除去は回路で
チャタリングの除去はソフトで
が普通かと ちょっと話はずれますが、
定番とされる回路があって、
・自分が納得できない場合は定番といえども見直す
・定番はとりあえず採用する
という2つの端っこがあって、たいていの人がその両極のあいだのどこかにふわふわと位置しています。
ただ「自分で納得できない場合」は曲者です。
トラブルが起きるところは想定外なことが多いわけで、つまり、実際にそこまで事前に想定できなかったわけです。
定番回路は、先人達の想定外の失敗の積み重ねの中で作られてきたものかもしれません。
先人が見逃して痛い目にあったことを避けるだけの抜け目なさを、先人達全員よりも一人の自分の方が備えていると
言えるのでもなければ、受け入れる方が良いという考え方あるかと思います。 基本は>>422
マトリクスでも単独でも
当然、事情があるならそれ以外の構成も使う >>416
BBFのスイッチだとLPFが無い場合、一瞬
オープンの状態ができてしまいますがな… 俺も単なるプッシュスイッチがつながるだけの所にコンデンサなぞ入れんぞ。
必要なのはEMC対策がうるさいところだけじゃないか?
先達ってのはなんかわからんが入れとこうみたいな人達もたくさんいるからな。
定番と言うべきか慣習と言うべきか。 オモチャから軍事医療宇宙産業までいろいろな所にボタンが使われている
品質の考え方も色々ある いつも電源が一瞬で落ちること考慮せずにプログラム書いてるんでだけどさ
マイコン上で処理が走っているのにもかかわらず電源ってぶち抜いても問題ないの?
OSの乗ったパソコンとかだとシャットダウン処理走らせるじゃん? 処理していた内容を保存したいなら
保存処理する必要がある
駆動部分とか加熱部分、
そのままだとショートするようなトコがあってヤバいなら
安全側にしてから死ぬ必要性がある
特に危なくないなら、適当で構わない 私は、スィッチ入力には、高い周波数用のノイズ対策用にCRフィルターを入れ、
チャタリング除去はソフトで対処するこが多い。
入力信号に乗るのがチャタリング「だけ」なら問題無いのだが、
数KWのサーボモータが近くにいくつもあるような工場で使う装置で、
何回かノイズでイヤな思いをしてきたので、どうしても臆病、慎重になってしまって、
スィッチにCRを付加する手間とコストを惜しまない。
一言でいうなら、「溺れる前に藁をも掴む」、てかw >安全側にしてから死ぬ必要性がある
昔、トンネル炉のコントローラを作った時に、
非常時には何が何でもプラスティック・フィルムを駆動するモータを動かして下さい。
そのままにしておくとフィルムが燃えますから。
と要求された事がある。
で、非常時になった時にモータが動かず(!)、
炉の中でフィルムが燃えて、
「機械は真っ黒になるし、工場中に細かな煤の雨が降って掃除が大変でしたよ」
と言われた……。
原因は機械屋の方にあったが、私としても関係者の一員として、
何だか、土下座して謝りたいほどの気持ちになった。 メカ接点はいきなり落っことすからどうしても
跳ね返りが起きるわな。
アクティブローなら、極端なこと言えば、
しきい値超えなきゃ下で暴れてる分には知らんみたいな。 >>434
モーター駆動系を物理的に冗長設計すべきだな
そういうのは >>434
逆に電流駆動制御のDCモーターにガツンと電流を流したままマイコンが停止すると
モーターが超高速回転になって危険な状態になる場合もあるな。
いずれにしろリアルタイム制御をする以上は、電源断にしろ瞬断にしろバグにしろ、
処理がおかしくなることを全く考慮せずにプログラム書くなんてことはありえない。 現場を知らない奴の机上の空論としては >>436 の方がまだマシだな。
「事件は会議室で起きてるんじゃない!現場で起きてるんだ!」w >>442
トラブルは実験室で起きてるんじゃない客先で起きてるんだ。 アララ、こんな朝早くからかぶってしまった…
どうもごお早うございます、東日本の雨、早くやむといいですね >>448 九州や広島のほうが大変ですよ。
関東はこれからかな。
ご安全に〜 すみません、東と西を間違えてしまいました。
ネタかぶりで少し動揺してしまったのかな? 当たり前の事だけど、異常対策は費用対効果で決る。
たとえ人身事故の可能性があったとしても利益以上の金は掛けられない。
だから異常対策は難しい。 ノイズ対策も同じような事(費用対効果)が言える。
また、現場でトラブった経験を積み重ねないとノイズ対策は難しいと思う。
(AVRそのもには関係無い話しでスマン) おっと、マルツでATMEGA4809の販売が始まったよ。
次期Arduinoに採用されたやつ。 フラットの方がDIPよりはるかに配線しやすいんだけどなあ
変換基板+SIPソケットでマイコンの腹の下にも部品配置できるし 俺も最近はSMDに抵抗なくなってきた。
変換基板つかったり、ランドに足載せて付けたりで何とでもなる 20MHz動作のSRAM6KBでこの値段は安いな。
RTOSも楽々だ。 チップ抵抗・コンデンサ使ってると、もはやDIPが使いにくいなw
変換基板はソケットなしユニバーサルに直付けだよ
両面から信号取れる おっさんとジジイはDIPじゃねぇとちゃんと動いてる気がしねぇんだよ!
察してくれよ!! ブレボ利用のためのDip化は秋月あたりがやってくれるでしょ。 じじいだけど頑張ってKiCAD覚えて、DIP卒業してみるか!! >>468
つか、12V回路の隣とかで動かすから
よく壊すんよね。
差し換えやすいdipが楽。 >>471
QFPのリワーク(換装)なんて考えただけでゾッとする。
試作品だと、CPUボードをそっくりそのまま交換して作業終わり、
と言うわけにもいかないし。
私の用途ではCPU以外の電源は±15V(AI/O)や24V(DI/O)が多い。
CPUの電源も24Vから作ったりする。
CPUの電源は5V以下には下げたくないな。
消費電力は全く気にしていない。 5V 以下のCPUなんて今時あるのか?
12V で動くとか? >>473
誤解されないように正確に書けば、
CPUの電源は5V以下には下げたくないな。
CPUの電源は5V未満には下げたくないな。
PICには12VのCPUが有るらしいよ、AVRでは聞いた事が無い。
>>474
ハンダゴテ2本で! それは素晴らしい。
私は細いステンレス線とホットブローのハンダゴテで、
(これが今の所、最もパターンを傷つけない)
チッ、めんどくせぇな、と文句を言いつつ、
チマチマと時間を掛けて外している。 AVRにもHVってタイプでそんなのあるんだよ。
QFPは全ピンブリッジするぐらいたっぷりはんだ盛れば5秒くらいは固まらないからその隙に外す。
俺的にはこれが一番パターン痛めないな。慣れはいるけど。
ちなみにこれ低温ハンダで紹介されるやり方だけど、普通のはんだやってるよ。
コテ握ってものの30秒ほどで取り外すからいつも感心はされるw >>476
AVRのHVタイプか、そうか、知らなかった、私の勉強不足だな。
その取り外し方法は低温ハンダでやってみたことがある。
確かに楽に外れるのだが、低温ハンダが高価なので諦めていた。
今度、普通のハンダでトライしてみる。
ところで両足にもハンダゴテをくくりつければ、QFPの1辺につき1本で出来るなw
今夜は久しぶりに、カミサンと好物のウナギの握り寿司を食べに行く。
自他共に認める貧乏人なので「くら寿司」だけど、
それでも楽しみで、ルンルン気分だぜw 2本で2辺交互に充ててがんばるんだぜぃ!
慌てなくてもピンセットに持ち替えてチップ持ちあげるくらいまで案外固まらないもんだよ。 好きな電子工作しながら嫁さんと仲むつまじい日常とか
幸せ者過ぎるなあ
お前らは不具合と評価試験でわけのわからん機械に囲まれ
人のぬくもりを感じることなく女の香りより、ちょっと焦げ臭いなw
と嗅覚が神経質に発達し一生を終えるんだろうけど ATMEGA328Pでおもちゃ作って、娘が楽しそうに遊んでる姿を見るのも楽しいぞ。 attiny85でじゅうぶん!
ガンプラの電飾も、ヴィネットの電飾も、MIDIも、USBI/FもGPSもみんなこれでおk
やすいし、ラズパイとつなげるとさらに用途増えるし
まぁ、人によるか、よるよねぇw ふむふむ。
それはATMEGA328Pを使ったことに意味があるのではなくて、
>>482さんの何を作るかというセンスが良かったってことですね。すばらしい。 ArduinoUNOでマイコンを覚えたので、そのままATMEGA328P使ってるんだよね。
コンパクトにできるattiny試してみたいけど、種類が多くて何を選んだらいいのかわからんのよ。
最近、ボタンを押すとポプテピピックの音声が1フレーズランダムで再生されるやつを作ったんだけど、1歳の娘が何度も何度も一生懸命にボタンを押してて萌える。 >>486
個人的にtiny系では一番使いやすと思う
(あくまでも個人の意見です) >>485
◆元気なDIPの仲間たち◆ ROM最上位のみ 【【【※個人の感想です】】】
・ATtiny13A-PU
8ピン。かわいい。安い。FLASH1KにRAM64と非常に貧弱。でも出来ることはたくさんあるんだぜ。
ADCだってPWMだって出来るんだ。あんま使われないけどコンパレーターも付いてるぜ。タイマーは1個しかないけどね!
・ATtiny85-20PU
8ピン。やたら高機能になった本気の8ピン。FLASH8KにRAM512もある。タイマも2個になった。本当に色々できる。
なんと汎用シリアル通信も付けてもらったぞ。水晶だって付けられる!確かなボーレートをご提供。実は1世代古くて2.7Vないと動かない。
まずVCCだろ?GNDだろ?RESETだろ?で、XTAL1だろ?XTAL2だろ?そしたらTXDだろ?RXDだろ?足が1本しか残ってねえぞ!
・ATtiny84A-PU
14ピン。一気にIOが増えて使いやすくなった。ADCのチャンネルも2倍になった。でもROMやRAMは↑といっしょだよ。
やったぞ!16bitのタイマー1を付けてもらった!さすがの分解能でぞんぶんに活躍してくれるぞ。でもあんまり売ってないんだよね…。
・ATtiny841A-PU
20ピン。かなりゲジゲジになった。でもROM/RAMはやっぱり一緒。ちょっと変わり種で10bitタイマー&分割8bit二刀流な16bitタイマー。
え?こんなに大きいならもうmegaでいい?でも!ほら!消費電力が!電池駆動ならスリープするから良い?そっか・・・。
・ATtiny4313-PU
20ピン。なんか容量が少ない…。入手性がいい弟分の2313はもっと少ない。こいつも少し変り種。20ピンはどうしてこうなのか?
他と何が違うって何とADCを投げ捨ててハードウェアUSARTを付けて貰ったぞ!これでセンシングしたデータをPCに送るのも安心だ!
え?ADCがないからアナログセンサーが使えない?なぜコンパレーターを残してそれを捨てた…。でもソフトシリアルと二刀流は良いよね。
・ATmega328P-PU
28ピン。ようこそお待ちどう。我こそはAVRの王…でもない。でもArduinoのお陰でめちゃくちゃ有名になった気がする。
シュリンクパッケージ(300mill)だからすごくゲジゲジ。タイマーも3つになったしUSARTも標準装備だ。I2Cもあるぞ!
tinyちゃんと違ってmegaくんはなんと掛け算ができる。命令セットの関係で同じプログラムでも速度が違うんだぜ。
・ATmega1284P-PU
40ピン。ArduinoMEGAで活躍してるよ。なんとDIPがある。ゲジゲジのおばけ。600millになって存在感抜群。これDIP用意する必要あった???
32のGPIOに128KのROM、16KのRAMを搭載し、グラフィック液晶が相手でも余裕でこなせるぞ!でもタイマーは328Pと一緒なの…。 細かいとこすまんが、Arduino MEGAの石は1284じゃなくてQFPの2560だ >>492
1280からだろ?
いずれにせよDIPのある1284ではないな ■ このスレッドは過去ログ倉庫に格納されています