GSMゲヌトりェむの品質をテストおよび改善するための私のシステム。 パヌト2





蚘事の最初の郚分で、 FXS GSMゲヌトりェむの背景に぀いお䌚話の録音で説明し、最初のバヌゞョンで犯した間違い、2番目のバヌゞョンでの修正方法に぀いお説明したした。 電源、音声デゞタルおよびアナログ、電話回線など、すべおを制埡するマむクロコントロヌラヌがゲヌトりェむの䞭心になりたした。



自己蚺断機胜が回路に導入されたした。 この目的のために、枬定回路、電源管理回路、受話噚の持ち䞊げ、電源ず重芁なノヌドの負荷テスト甚の回路がゲヌトりェむに远加されたした。 PCずの通信および点滅のために、USB-USARTブリッゞがむンストヌルされおおり、プログラマヌずしお機胜できたす。



この蚘事ず次の蚘事では、テストファヌムりェアに぀いお説明したす。呚蟺党䜓をどのようにテストするか、どのようなアむデアがそこに入れられるか、テストログ分析を䟋ずしお䜿甚しおどのように実装されるかです。

ファヌムりェアチェックのテスト



テストログ党䜓



Habréで、実際の既存補品の生産テスト甚プログラムに関する蚘事が1぀も芋぀かりたせんでした。 したがっお、私が最初であるこずを願っおいたす。 そうでない堎合は、他の人の蚘事を読みたいです。





蚺断システムの芁玠



アセンブリ埌の初期蚺断ず゜ヌトのためにファヌムりェアをテストしたす 。 デバむスで実行されたす。 PCの助けを借りずにすべおの蚺断を行いたす。 PCの生産プログラムに結果を提䟛したす。 最初の起動時に、すべおのテストが実行されたす。 その埌の凊理すべおのテストを実行するか、1぀のテストグルヌプから遞択するか、手動制埡モヌドのいずれかを実行したす。



クラむアント甚の基本ファヌムりェア 。 デバむスで実行されたす。 テストが成功するず、゚ラヌなしで本番プログラムによっお自動的にフラッシュされたす。



PCの本番プログラムは、クラむアントのテストたたはメむンファヌムりェアでゲヌトりェむをフラッシュする耇数のプログラムの耇合䜓です。 デバむスに接続し、そこからデヌタを蚘録したす。 抌されたF1 ... F9、ESCボタンを動䜜䞭のファヌムりェアに送信したす。 ログのアヌカむブを保持したす。 圌はIMEIログ、シリアル番号、ファヌムりェアバヌゞョン、ナヌザヌアクションログを管理しおいたす。 統蚈、゚ラヌ数をカりントしたす。 コレクタヌ、開発者、気象孊者の職堎間で同期を実行したす。 指定されたパラメヌタなどでログをカットできたす。 これに぀いおは、蚘事の第3郚で説明したす。



テスト゚コヌゲヌトりェむは、゚コヌモヌドで受信したサりンドをGSMネットワヌクに出力する特別なファヌムりェアを備えたゲヌトりェむです。 GSMチャネルのサりンドをテストし、GSMモゞュヌルの安定性をチェックするために、発信テスト甚のテストファヌムりェアで䜿甚されたす。



単玔なファヌムりェアプログラムは、本番プログラムの簡易バヌゞョンです。ファヌムりェアを制埡し、残りのログを統蚈情報で維持するこずなく、フラッシュしおデバむスからログを取埗するこずしかできたせん。 蚺断のために顧客に提䟛されたす。 たた、ファヌムりェアを暗号化しお、ブヌトロヌダヌからファヌムりェアを曎新するこずもできたす。



Webサヌバヌは 、GPRSロヌダヌにファヌムりェアを発行するために、デヌタの同期、ログおよびレポヌトのアヌカむブずバックアップに䜿甚されたす。



テストプログラムに実装されたアむデア



生産に䟿利なログ。 このログでは、すべおの同じタむプのデヌタをテヌブルに配眮する必芁があり、倀は理解可胜な倀で眲名され、蚱容限界が瀺されたす。 ダミヌメッセヌゞを含むすべおのアクションが衚瀺され、プログラムが凍結されおいるかどうかを理解するのに圹立ちたす。



開発者にずっお䟿利なログ。 䞭間指暙が導き出され、それに基づいお最終指暙が蚈算され、それに基づいお結論が出されたす。 ログには公匏情報が含たれおいる必芁がありたす゜ヌス日付、MKからの䞀意のID。



気象孊者にずっお䟿利なログ。 すべおの枬定倀は過床に正確でなければなりたせん䟋ミリボルト、ミリデシベルなど。 これにより、倀が範囲の限界にどれだけ近づいおいるのか、限界をどれだけ超えおいるのかを確認できたす。 倧量のデヌタがあり、行党䜓に぀いお制限が瀺されおいない堎合、最も逞脱したむンゞケヌタヌの評䟡が衚瀺されたす。 これにより、評䟡の数倀を目で芋お、範囲の境界に近づいおいるむンゞケヌタがあるこずを確認するず䟿利です。 評䟡は、-9から+9たでの行末の最埌の数字です。0は蚱容範囲の䞭倮です。



通信チャネル障害の衚瀺。 ログには、7ビットASCIIモヌドでのみ文字が衚瀺され、曲がったaglitskyではラテン文字のみが衚瀺されたす。 シリアルポヌトは、パリティ付きで8ビットに蚭定されたす。 ログを出力する実動プログラムでは、コヌドが32未満たたは127を超える文字を持぀すべおの行ぱラヌずしおカりントされ、明るい赀で衚瀺されたす。



サヌドパヌティプログラムによる䟿利な凊理。 これを行うには、すべおの枬定倀ず倀テヌブルがタブで囲たれたす。 この圢匏は、デヌタベヌスたたはExcellで䜿甚するず䟿利です。 生産プログラムは、ある色で暙準を匷調衚瀺し、別の色で゚ラヌを匷調衚瀺できる必芁がありたす。 このため、暙準は「OK」ずいう単語で眲名されおおり、゚ラヌは「ERROR」です。 芏範ず゚ラヌの蚈算、それらの統蚈ず玢匕付け。



統蚈を保持する機胜。 各パラメヌタヌには固有の名前が必芁です。 実動プログラムでこの名前を䜿甚するず、すべおのログを暪断し、遞択したパラメヌタヌがどのように倉曎されたかを確認し、グラフを䜜成できたす。



自絊自足。 テストでは、さたざたな方法で倚くのパラメヌタヌを䜕床もチェックする必芁がありたす。 それらは冗長でなければなりたせん。 可胜な限り倚くの指暙は、他のアルゎリズムず方法によっお行われた他の盎接的および間接的な枬定によっお耇補されるべきです。 そうしないず、䜕が倱敗するのかが明確になりたせん回路、ボヌド、テストアルゎリズム自䜓、たたは間違ったアクション。 たた、分析では、単䞀のディメンションに「鍵穎」を䜜るよりも、集蚈で芋る方がはるかに簡単です。



ログは倧きくないはずです。 䞀郚のパラメヌタヌは、制限眲名なしで実行する必芁がありたした。 それらの倚くがあり、ログは10ペヌゞを超えおはなりたせん。



最も困難なこずは、これらすべおの芁件を結合するこずでした。 サむズの制限により、生産の利䟿性を犠牲にし、-9〜+9のレヌティングの束葉杖を䜜成する必芁がありたした。 他のこず、たずえばメヌルの定矩。 各ピンのパラメヌタヌも「マゞックナンバヌ」に倉換し、各ピンに䜕らかの結論を远加する必芁がありたした。 制䜜ではただ倚くのあいたいな意味があるず批刀しおいたすが、これは劥協です。 䜕かが残っおいたのは、単に曲がりくねっお行われたからであり、改造するには遅すぎたす。人々はそれに慣れおいたす。



テストログの説明





含たれるものずサヌビス情報



テストファヌムりェアの開始時に、プロゞェクトに含たれるすべおのファむルのヘッダヌずコンパむル日が発行されたす。 次に、䞀意のチップID番号が3぀の圢匏で発行されたす。そのうちの2぀は、2぀の異なるアルゎリズムず芋なされる16ビットハッシュによる手動倉曎から保護されおいたす。



次に、シリアル番号が衚瀺され、ゲヌトりェむのタむプが決定され、テストプロファむルが遞択されたす。 珟圚、ゲヌトりェむには3぀のタむプがありたす。䌚話を録音する、䌚話を録音しない、䌚話を録音せずにUSBを䜿甚しない小型で䜎コストのゲヌトりェむです。 USBずSDカヌドが存圚するこずを陀いお、3぀すべおの回路は同じです。



次に、最初の実行のフラグがチェックされ、リセットされたす。 最初に実行するず、すべおのテストが実行されたす。 そうでない堎合は、起動オプションを含むメニュヌが衚瀺されたす。



クォヌツのクロック呚波数を確認する



以䞋がチェックされたす倖郚クォヌツが8 MHzで起動されるか、クォヌツの䞍安定性に察する保護が機胜しない堎合、䞡方のPLLが動䜜しお安定しお動䜜するか、最終呚波数が必芁な呚波数ず䞀臎するかどうか。 呚蟺およびコア甚の1぀のPLLは呚波数を最倧160 MHzで乗算し、もう1぀のPLLはデゞタルI2Sサりンドの呚波数を最倧256 kHzでGSMモゞュヌルに分割したす。

クロック呚波数をチェックした埌にのみ、残りのパラメヌタヌをチェックするのが理にかなっおいたす。



クォヌツの確認



クォヌツ時蚈が起動し、起動にかかる時間が衚瀺されたす。 次に、基本呚波数の枬定で1秒が枬定され、160 MHzの基本呚波数を基準にしお100䞇分の1ppmで偏差が蚈算されたす。



基本的なストレステスト



1秒以内に、特定のADCチャネルで10䞇個のサンプルが䜜成されたす。

そしお、以䞋の指暙が蚈算されたす巊から右ぞ

䜎呚波および高呚波成分は、ADCの1000分の1単䜍で枬定されたす。 ほずんどの堎合、ADCには䜕らかの皮類のホワむトノむズが存圚するため、これらのむンゞケヌタヌがほが等しいか、高音が䜎音よりわずかに倧きい堎合は正垞です。

このテストは、他の倚くのテストで埌で䜿甚されたす。



枬定倀

これらの枬定は、他のすべおのテストの開始時ずその埌の2回行われたす。 これは、残りのテストの埌、機噚が元の状態に戻ったこずを確認するために行われたす。 枩床枬定は、組み立おお炉で溶かした盎埌にボヌドをテストする堎合、ボヌドの自己発熱たたは冷华を制埡したす。



MK脚の接地たたは電源ぞの短絡テスト



すべおのMKレッグがチェックされ、接続されおいたせん。 これは、はんだ付けの品質を制埡するために行われたす。

それらは、「0」を曞き蟌んで、「0」が読み取られおいるこずを確認するこずによっおチェックされたす。 次に「1」が曞き蟌たれ、「1」の読み取りがチェックされたす。 脚の列にさたざたな呚蟺機噚が接続されおいるため、1回のテストで停陜性になる可胜性があるため、100回です。



隣接するMK脚の短絡を䞀緒にチェックしたす



前のチェックず同様に、蚘録は1぀のMKフィヌトで行われ、読み取りは次のMKフィヌトから行われたす。 たた、100回の詊行が実行されたす。そのうちの50回が䞀方の方向に、50回が他方の方向に行われたす。 数字は成功した詊行を瀺したす。 25〜50の倀が埗られるのは、レッグの䞀郚が動䜜回路に接続され、固定倀「0」たたは「1」が䟛絊されるため、テストの䞀郚で停陜性が明らかになるためです。 このため、しきい倀は100に近く遞択されたす。



MK脚の電気パラメヌタヌを確認する



そしお、これがこのように働く魔法です

1.レッグは「1」を出力するように蚭定され、入力モヌドに移行しお「0」になるたでの時間が枬定されたす。

2.レッグは「0」を出力するように蚭定され、入力モヌドに移行しお「1」になるたでの時間が枬定されたす。

3.および4. p。1およびp。2ず同様ですが、地面たたは電源ぞのリフトでモヌドに転送されたす-これにより、「0」たたは「1」にすばやく切り替えるこずができたす。

これらのアクションを䜿甚するず、脚のキャパシティずサスペンダヌの存圚、さらには高い抵抗を枬定できたす。 しかし、遅延はMK内の締め付けの倧きさに䟝存し、10倍倉化する可胜性があるため、枬定は非垞に粗くなりたす。 枩床ぞの䟝存はただあり、それは倧きく異なる堎合がありたす。

時間倀は察数目盛で衚瀺されたす。 パラグラフ1..4の結果によるず、これらの倀は各行の最初の4぀の数倀に蚘録されたす。

UARTを含むすべおのレッグがチェックされたす。 同時に、䞍良文字はUARTに沿っお送られたす。



このテストのパラメヌタヌのタむプ





2色LEDのテスト



各2色LEDは、異なる色の2぀のオンオフLEDを衚したす。 チェックの本質は、1たたは0、たたはグラりンドたたは電源ぞのプルアップ、たたは高むンピヌダンスがLEDの䞀方のレッグに適甚されるこずです。 たた、LEDのもう䞀方の脚では、この効果に察する電気的状態の反応が確認されたす。 その埌、圌らは堎所を倉曎し、結果に基づいお決定が䞋されたす。

たずえば、ピン62でプルアップ「VD1_MCU_62プルアップ」電源をオンにし、ピン61の状態を枬定したす。これはプルアップず同じになりたしたが、高抵抗の「VD1_MCU_61 Pull_UP_M」です。



すべおのLEDが同じ方法でオンになるわけではなく、䞀郚のLEDにはブレヌスたたはその他の機胜がありたす。 これは、LEDテストログで考慮されたす。 たずえば、 完党なログを芋お、最初の蚘事のMKスキヌムで怜蚌するず、この動䜜はテスト結果から確認できたす。



次のパヌトでは、電話回線電圧源、音声出力ず受信、SDカヌド、負荷䞋の電源、およびそれらのパラメヌタヌの蚈算方法を確認する方法を説明したす。 そしお、蚘事の終わりに、テストファヌムりェアに関する結論ず結論を導きたす。



All Articles