以下、信号読取装置の実施の形態について、添付図面を参照して説明する。
図1に示すように、この信号読取装置としての信号読取装置1Aは、シリアルバスSB(CANバスおよびCAN-FDバスのうちのいずれか一方のバス)と、このシリアルバスSBに伝送されているCANフレームやCAN-FDフレーム(以下、特に区別しないときにはCANフレームともいう)を観測したり収集したりするための外部機器との間に配設されて、シリアルバスSBについてのレベル状態を検出すると共にこの検出したレベル状態(レセッシブ状態またはドミナント状態)に同期して電圧レベルが変化するレベル状態検出信号Sfを生成し、かつこのレベル状態検出信号Sfを上記の一方のバスの規格に準じた信号であって、レベル状態検出信号Sfの電圧レベルに応じてレベル状態が上記のレセッシブ状態または上記のドミナント状態に変化する信号Vcva,Vcvb(CAN信号またはCAN-FD信号)に変換して、外部機器に出力する。
なお、このシリアルバスSBを介してのCANフレームの伝送原理については公知のため、詳細な説明を省略するが、一例として2線差動電圧方式のシリアルバスSB(一対の被覆導線La,Lbで構成されるバス)でのCANHigh(CANH)の被覆導線Laに伝送される電圧信号Va、およびCANLow(CANL)の被覆導線Lbに伝送される電圧信号Vbの仕様について簡単に説明する。
図2に示すように、電圧信号Va,Vbは、ベースになる電圧(+2.5V)から逆方向に変化する電圧信号であって、電圧信号Vaがこのベースの電圧のときには、電圧信号Vbも同じ期間に亘り同じベースの電圧になって(シリアルバスSBのレベル状態がレセッシブ状態になって)、電位差(Va-Vb)がゼロ(最小)となるこの期間に伝送されるCANフレームを構成する符号Cs(論理値)は「1」を示すものとなる。一方、電圧信号Vaがこのベースの電圧よりも高電圧の規定電圧(+3.5V)のときには、電圧信号Vbは同じ期間に亘り、逆にベースの電圧よりも低電圧の他の規定電圧(+1.5V)になって(シリアルバスSBのレベル状態がドミナント状態になって)、電位差(Va-Vb)が最大となるこの期間に伝送されるCANフレームを構成する符号Cs(論理値)は「0」を示すものとなる。また、シリアルバスSBにおいて差動信号を伝送するための基準電位となる信号線である「SG」や、差動信号の伝送の用途以外に配設されている信号線および電力線等の図示および説明を省略する。
また、CANフレームおよびCAN-FDフレームのそれぞれのデータフレーム構造についても公知であるため、詳細な説明を省略するが、概要を簡単に説明する。それぞれのデータフレーム構造は、最初に、CANフレームおよびCAN-FDフレームのそれぞれのデータフレーム構造において共通するドミナント状態の1ビット(1ビットのドミナントビット)で構成されるSOFが送信され、次いで、ID、RTR(CAN-FDでは、RRS)、IDE、・・・、Data,(CAN-FDでは、Stuff Count )、CRCまでが、CANフレームおよびCAN-FDフレームのそれぞれのデータフレーム構造に従って送信され、続いて、CANフレームおよびCAN-FDフレームのそれぞれのデータフレーム構造において共通するCRC Delimiter(1ビットのレセッシブビット)、ACK、ACK Delimiter(1ビットのレセッシブビット)、EOFが送信される構造となっている。
この場合、SOFからCRCの終わりまでの範囲では、ビットスタッフィングルール(シリアルバスSBのレベル状態が同じ状態で5回連続した場合、それまでのレベル状態と反対のレベル状態を1ビット分だけ挿入するというルール)が適用されるため、レセッシブ状態のビット数およびドミナント状態の連続するビット数のそれぞれの最大は5ビットである。一方、共通のEOFは、ビットスタッフィングルールの適用外であって、レセッシブ状態の連続する7ビット(7ビットのレセッシブビット)で構成されている。
次いで、本例の信号読取装置1Aの構成について説明する。この信号読取装置1Aは、一例として図1に示すように、後述の金属非接触型の第1プローブPLa,第2プローブPLbを介して対応する被覆導線La,Lbの各芯線と接続され(容量結合で接続され)、かつ出力ケーブルCBoを介して既存の外部機器(例えば、データ収集装置などの電子機器)に接続される。これにより、既存の外部機器は、ダイアグコネクタを使用することなく、各プローブPLa,PLb、信号読取装置1Aおよび出力ケーブルCBoを介して、被覆導線La,Lbの各芯線に容量結合で接続される。
信号読取装置1Aは、具体的には、入力端子部11a,11b、信号生成部12、信号変換部13、マスク部14、処理部15A、電源部16およびパワーオンリセット部17を備えている。また、信号読取装置1Aは、入力端子部11a,11bに接続された第1プローブPLaおよび第2プローブPLbを備えている。
第1プローブPLaおよび第2プローブPLbは、シールドケーブル(一例として、同軸ケーブル)を用いて同一に構成されている。また、第1プローブPLaは、基部側が対応する入力端子部11aに接続される(固定的、または取り外し自在に接続される)と共に、被覆導線Laに取り外し自在に接続される先端部に電極部21aが設けられている。本例では、第1プローブPLaは金属非接触型のプローブとして構成されている。このため、電極部21aは、被覆導線Laに接続された状態において、被覆導線Laの不図示の絶縁被覆部(以下、単に「被覆部」ともいう)に接触(当接)して、被覆導線Laの不図示の芯線(導体自体(金属部))と容量結合する電極22aと、被覆導線Laの被覆部における電極22aの接触部位をこの電極22aを含めて覆うことで、電極22aの他の金属部(被覆導線Laの芯線以外の金属部)との容量結合を防止するためのシールド23aとを備えている。また、電極22aは、第1プローブPLaを構成するシールドケーブルの芯線および入力端子部11aの一の端子を介して信号生成部12の後述する第1検出回路31に接続されている。また、シールド23aは、このシールドケーブルのシールドおよび入力端子部11aの他の端子を介して、信号読取装置1Aにおける基準電位の部位(グランドG)に接続されている。
第2プローブPLbも第1プローブPLaと同様に金属非接触型のプローブとして構成されて、基部側が対応する入力端子部11bに接続されると共に、被覆導線Lbに取り外し自在に接続される先端部に電極部21bが設けられている。また、電極部21bは、被覆導線Lbの金属部(芯線)と容量結合する電極22bと、被覆導線Lbの被覆部における電極22bの接触部位をこの電極22bを含めて覆うことで、電極22bの他の金属部(被覆導線Lbの芯線以外の金属部)との容量結合を防止するためのシールド23bとを備えている。また、電極22bは、第2プローブPLbを構成するシールドケーブルの芯線および入力端子部11bの一の端子を介して信号生成部12の後述する第2検出回路32に接続されている。また、シールド23aは、このシールドケーブルのシールドおよび入力端子部11bの他の端子を介して、グランドGに接続されている。また、被覆導線La,Lbは同一構造(外径や断面構造が同一)の電線で構成されているため、この被覆導線La,Lbに接続される電極部21a,21bは同一に構成されている。
また、上記したように電極部21a,21bが同一に構成されているため、信号読取装置1Aの使用者が各プローブPLa,PLbを被覆導線La,Lbに誤接続する(第1プローブPLaを被覆導線Lbに接続し(取り付け)、第2プローブPLbを被覆導線Laに接続する(取り付ける))、という可能性もある。しかしながら、信号読取装置1Aでは、第1検出回路31が、入力端子部11aに接続された第1プローブPLaを介して被覆導線La(CANHの信号線)に接続され、第2検出回路32が、入力端子部11bに接続された第2プローブPLbを介して被覆導線Lb(CANLの信号線)に接続される必要がある。このため、誤接続を防止すべく、第1プローブPLaおよび第2プローブPLbには、接続すべき被覆導線La,Lbを明示するためのマーク等(例えば、接続すべき被覆導線La,Lbを示す「CANH」,「CANL」の文字等)が表示されている。
信号生成部12は、図1に示すように、第1検出回路31、第2検出回路32および信号生成回路33を備えている。
第1検出回路31は、一例として、インピーダンス素子31aおよびアンプ31bを備えて、入力端子部11aおよび第1プローブPLaを介して接続された被覆導線Laに伝送されている電圧Vaに応じて電圧が変化する第1電圧信号Vd1を出力する。
一例として、インピーダンス素子31aは、抵抗41a(高抵抗値の抵抗(少なくとも数MΩ程度の高インピーダンス抵抗))、および抵抗41aに並列接続されたコンデンサ42aを備えて構成されている。インピーダンス素子31aは、その一端(抵抗41aの一端)が入力端子部11aの一の端子を介して第1プローブPLaを構成するシールドケーブルの芯線に接続され、その他端(抵抗41aの他端)がグランドGに接続されている。この構成により、インピーダンス素子32aは、電極部21aの電極22aと容量結合する被覆導線Laに伝送されている電圧信号Vaの電圧Vaに応じて電圧が変化する電圧信号Vc1を、両端間に発生させる。この場合、インピーダンス素子31aは、電圧Vaがベースの電圧のときに低電圧となり、電圧Vaが高電圧の規定電圧のときに高電圧となるように変化する電圧信号Vc1を発生させる。
アンプ31bは、一例として、この電圧信号Vc1を非反転増幅して、第1電圧信号Vd1として出力する。なお、この構成に代えて、アンプ31bが、この電圧信号Vc1を反転増幅して、第1電圧信号Vd1として出力する構成を採用することもできる。また、アンプ31bは、電圧信号Vc1に含まれる交流成分と共に直流成分も併せて増幅する構成とすることもできるが、電圧信号Vc1に含まれる交流成分のみを増幅する構成(交流アンプとする構成)を採用して、アンプ31bの出力が飽和する(第1電圧信号Vd1がアンプ31bの作動用電圧で頭打ちとなる)事態の発生を軽減するのが好ましい。
第2検出回路32は、一例として、インピーダンス素子32aおよびアンプ32bを備えて、入力端子部11bおよび第2プローブPLbを介して接続された被覆導線Lbに伝送されている電圧Vbに応じて電圧が変化する第2電圧信号Vd2を出力する。
一例として、インピーダンス素子32aは、抵抗41b(抵抗41aと同じ抵抗値の抵抗)、および抵抗41bに並列接続されたコンデンサ42b(好ましくは、コンデンサ42aと同等の容量値のコンデンサ)を備えて構成されている。インピーダンス素子32aは、その一端(抵抗41bの一端)が入力端子部11bの一の端子を介して第2プローブPLbを構成するシールドケーブルの芯線に接続され、その他端(抵抗41bの他端)がグランドGに接続されている。この構成により、インピーダンス素子32aは、電極部21bの電極22bと容量結合する被覆導線Lbに伝送されている電圧信号Vbの電圧Vbに応じて電圧が変化する電圧信号Vc2を、両端間に発生させる。この場合、インピーダンス素子32aは、電圧Vbがベースの電圧のときに高電圧となり、電圧Vbが低電圧の規定電圧のときに低電圧となるように変化する電圧信号Vc2を発生させる。
なお、インピーダンス素子31a,32aは、上記の構成(抵抗41aおよびコンデンサ42aの並列回路、抵抗41bおよびコンデンサ42bの並列回路)に限定されるものではない。例えば、抵抗41aや抵抗41bだけの回路や、コンデンサ42aやコンデンサ42bだけの回路で構成してもよい。また、コンデンサ42a,42bについては、ディスクリート部品で構成することもできるし、入力端子部11a,11bを介して接続されたプローブPLa,PLbを構成するシールドケーブルの配線容量(芯線とシールドとの間に形成される容量)で構成することもできる。
アンプ32bは、一例として、アンプ31bと同一に構成(増幅率が同一で、かつ増幅形態(非反転増幅であるか反転増幅であるか、交流アンプであるか否か)が同一に構成)されている。本例では、アンプ32bは、増幅率がアンプ31bと同一の非反転アンプで構成されて、この電圧信号Vc2を非反転増幅して、第2電圧信号Vd2として出力する。なお、アンプ31bが反転アンプのときには、アンプ32bは増幅率がアンプ31bと同一の反転アンプで構成されて、この電圧信号Vc2を反転増幅して、第2電圧信号Vd2として出力する。また、アンプ31bが交流アンプのときには、アンプ32bも交流アンプで構成されて、電圧信号Vc2に含まれる交流成分のみを増幅して、第2電圧信号Vd2として出力する。
信号生成回路33は、第1電圧信号Vd1および第2電圧信号Vd2を入力すると共に、各電圧信号Vd1,Vd2の差分電圧(Vd1-Vd2)に基づいてレベル状態検出信号Sfを生成して出力する。この場合、信号生成回路33は、第1プローブPLaが被覆導線Laに接続され、かつ第2プローブPLbが被覆導線Lbに接続されて、図2に示すように、電圧Vaがベースの電圧のときに低電圧となり、かつ電圧Vaが高電圧の規定電圧のときに高電圧となるように電圧信号Vc1が発生し、また電圧Vbがベースの電圧のときに高電圧となり、かつ電圧Vbが低電圧の規定電圧のときに低電圧となるように電圧信号Vc2が発生している状態において、電圧信号Vc1と同相の第1電圧信号Vd1および電圧信号Vc2と同相の第2電圧信号Vd2の差分電圧(Vd1-Vd2)に基づいて、シリアルバスSBがレセッシブ状態の期間(つまり、CANフレームを構成する符号Cs(「1」)が伝送されている期間)において第1電圧レベルとしての高電位側電圧(レセッシブに対応する電圧)となり、シリアルバスSBがドミナント状態の期間(つまり、符号Cs(「0」)が伝送されている期間)において第2電圧レベルとしての低電位側電圧(ドミナントに対応する電圧。一例として、グランドGの電位)となるレベル状態検出信号Sfを正しく生成して出力する。
以上の構成により、信号生成部12は、シリアルバスSB(CANバスおよびCAN-FDバスのうちのいずれか一方のバス)について、レベル状態が劣位なレセッシブ状態であるか優位なドミナント状態であるかを検出すると共に、この検出したレベル状態に同期して、このレベル状態がレセッシブ状態のときには高電位側電圧(レセッシブに対応する第1電圧レベル)に変化し、このレベル状態がドミナント状態のときには低電位側電圧(ドミナントに対応する第2電圧レベル(第1電圧レベルとは異なる電圧レベル))に変化するレベル状態検出信号Sfを生成して出力する。
信号変換部13は、シリアルバスSBの規格に準じたCANトランシーバで構成されて、入力した信号(レベル状態検出信号Sf1)を送信信号としての差動信号(CAN通信方式の信号Vcva,Vcvb)に変換して出力する。
マスク部14は、信号生成部12と信号変換部13との間に介装されて、信号生成部12からレベル状態検出信号Sfを入力すると共に、このレベル状態検出信号Sfを高電位側電圧(第1電圧レベル)に固定して、新たなレベル状態検出信号Sf1として信号変換部13に出力するマスク出力処理、およびレベル状態検出信号Sfをそのまま新たなレベル状態検出信号Sf1として信号変換部13に出力する通常出力処理のうちの一方の出力処理を実行する。本例では、マスク部14は、パワーオンリセット部17から出力される後述のリセット信号Srstを入力したときには、マスク出力処理の実行を開始する。また、マスク部14は、処理部15Aから後述のセット信号Ssetを入力したときには、通常出力処理を実行する。
このマスク部14は、種々の既知の回路(順序回路など)で構成することができる。例えば、マスク部14は、図示はしないが、2入力のOR素子と、セット端子およびリセット端子を有する非同期式フリップフロップ(Dフリップフロップなど)とで構成することができる。具体的には、フリップフロップは、例えば、データ入力端子はグランドGに接続され、セット端子にはリセット信号Srstが入力され、リセット端子にはセット信号Ssetが入力される。OR素子は、一方の入力端子にレベル状態検出信号Sfが入力され、かつ他方の入力端子にフリップフロップのQ端子からの出力信号が入力されて、出力端子からレベル状態検出信号Sf1を出力する。
この構成のマスク部14では、フリップフロップは、信号読取装置1Aの起動時(つまり、電源部16から出力される作動用電圧Vopの立ち上がり時)においてパワーオンリセット部17から出力されるリセット信号Srstに基づき、Q端子からの出力信号をハイレベルとし、その後、処理部15Aからセット信号Ssetが出力されたときに、Q端子からの出力信号をローレベルとする。OR素子は、フリップフロップからの出力信号がハイレベルのときには、レベル状態検出信号Sf1をハイレベルに固定して出力し、フリップフロップからの出力信号がローレベルのときには、レベル状態検出信号Sfをそのままレベル状態検出信号Sf1として出力する。したがって、マスク部14は、信号読取装置1Aの起動時からセット信号Ssetが入力されるまでの間において、レベル状態検出信号Sf1をハイレベルに固定して出力する(レベル状態検出信号Sfをマスクする)マスク出力処理を実行し、セット信号Ssetが入力された時点からは、レベル状態検出信号Sfをそのままレベル状態検出信号Sf1として出力する通常出力処理を実行する。
処理部15Aは、例えば、A/D変換器とCPU、またはDSP(Digital Signal Processor)などを用いて構成されて、マスク部14に対して上記したようにセット信号Ssetを出力して、マスク出力処理に代えて通常出力処理を実行させる出力切替処理を実行する。この出力切替処理では、処理部15Aは、レベル状態検出信号Sfを入力して、レベル状態検出信号Sfの電圧レベルを検出すると共に、この検出した電圧レベルが第2電圧レベルとしての低電位側電圧(ドミナントに対応する電圧であるグランドGの電位)から第1電圧レベルとしての高電位側電圧(レセッシブに対応する電圧)に変化した後、この高電位側電圧の状態(レセッシブ状態)が予め規定された基準時間以上継続したときに、セット信号Ssetを出力する。なお、処理部15Aは、シリアルバスSBについての規定のボーレートに基づいて規定される上記したCANフレームの1ビットの周期よりも十分に短い周期の動作クロックで動作して、レベル状態検出信号Sfをサンプリングすることで、レベル状態検出信号Sfのレベル状態(第1電圧レベル状態および第2電圧レベル状態)の長さを十分な精度で計測可能となっている。また、処理部15Aは、計測した第1電圧レベル状態や第2電圧レベル状態の長さ(時間)と、既知の上記ボーレートとに基づいて、レセッシブに対応する第1電圧レベル状態に含まれるレセッシブビット数や、ドミナントに対応する第2電圧レベル状態に含まれるドミナントビット数を検出可能となっている。
信号読取装置1Aの起動直後においては、信号生成部12は、動作が安定していないことから、上記したCANフレームのデータフレーム構造に合致した正確なレベル状態検出信号Sfを生成し得ないことがあるが、信号読取装置1Aの起動直後から予め規定された時間t1(例えば、数秒から十数秒)が経過するまでには、動作が安定して、このデータフレーム構造に合致した正確なレベル状態検出信号Sfの生成および出力を開始する。データフレーム構造に合致した正確なレベル状態検出信号Sfにおいては、7ビットのレセッシブビットで構成されるEOFが必ず含まれる。また、このEOFの前に含まれるSOFからCRCの終わりまでの範囲では、ビットスタッフィングルールが適用されることから、この範囲には、ドミナントビットが1ビット以上必ず含まれる。
したがって、処理部15Aは、上記の起動後から予め規定された時間t1に亘って、レベル状態検出信号Sfの電圧レベルを検出しつつ、レベル状態検出信号Sfの第1電圧レベル状態(レセッシブに対応する電圧の状態)および第2電圧レベル状態(ドミナントに対応する電圧の状態)の長さを計測して、レベル状態検出信号Sfの電圧レベルがドミナントに対応する電圧の状態からレセッシブに対応する電圧の状態に変化し(つまり、1ビット以上のドミナントビットを検出した後、レセッシブビットを検出している状態に変化し)、かつその後においてこのレセッシブビットを検出している状態が予め規定された基準時間(具体的には、EOFの出力時間、つまりレセッシブビットの7ビット分の時間)以上継続したときに、セット信号Ssetを出力する。この構成により、処理部15Aは、上記の予め規定された時間t1内において、信号生成部12がデータフレーム構造に合致した正確なレベル状態検出信号Sfの出力を開始したことを検出して、セット信号Ssetを出力することが可能となっている。
なお、処理部15Aは、上記したように、シリアルバスSBについてのボーレートが既知のときには、ドミナントに対応する電圧の状態のときのドミナントビット数や、レセッシブに対応する電圧のときのレセッシブビット数を検出可能であるが、シリアルバスSBについてのボーレートが未知のときには、ドミナントに対応する電圧の状態のときの長さ(時間)やレセッシブに対応する電圧の状態のときの長さ(時間)を計測し得るものの、ドミナントビット数やレセッシブビット数の検出は行えない。
しかしながら、信号生成部12がデータフレーム構造に合致した正確なレベル状態検出信号Sfの出力を開始した状態においては、ビットスタッフィングルールが正確に適用され、かつEOFが正確に出力されていることから、上記の予め規定された時間t1に亘って、レベル状態検出信号Sfについての第1電圧レベルとなる状態(レセッシブに対応する電圧の状態)の最大連続時間長、および第2電圧レベルとなる状態(ドミナントに対応する電圧の状態)の最大連続時間長を計測した場合(通常は、複数回計測した場合)、この予め規定された時間t1内に、第2電圧レベルとなる状態についての最大連続時間長(最大で5ビット分の時間長)を超える基準時間(7ビット分の時間)以上となる第1電圧レベルとなる状態についての最大連続時間長(7ビット分の時間)が必ず計測される。
したがって、信号読取装置1Aでは、処理部15Aが、上記の起動後から予め規定された時間t1に亘って、レベル状態検出信号Sfの電圧レベルを検出しつつ、レベル状態検出信号Sfの第1電圧レベルの状態および第2電圧レベルの状態の各長さを計測して、この予め規定された時間t1内に、第2電圧レベルとなる状態についての最大連続時間長(最大で5ビット分の時間長)を超える基準時間(7ビット分の時間)以上となる第1電圧レベルとなる状態についての最大連続時間長(7ビット分の時間)を計測したときに、セット信号Ssetを出力する構成を採用することもできる。この構成においても、処理部15Aは、上記の予め規定された時間t1内において、信号生成部12がデータフレーム構造に合致した正確なレベル状態検出信号Sfの出力を開始したことを検出して、セット信号Ssetを出力することが可能となっている。
電源部16は、外部からの直流電圧や交流電圧の供給が開始されたときに、この直流電圧や交流電圧に基づいて、信号読取装置1Aの各構成要素(信号生成部12、信号変換部13、マスク部14、処理部15A、パワーオンリセット部17)を動作させるための作動用電圧Vopを生成すると共に、この各構成要素への供給を開始する。信号読取装置1Aのパワーオンリセット部17を除く各構成要素は、例えば、作動用電圧Vopが予め規定された電圧値(規定の電圧値)に達した時点で動作を開始する(信号読取装置1Aが起動する)。
パワーオンリセット部17は、公知のリセット回路やリセットICで構成されて、例えば、電源部16から供給される作動用電圧Vopの立ち上がりの開始からリセット信号Srstの出力を開始し、その後に作動用電圧Vopが規定の電圧値(信号読取装置1Aの各構成要素が動作を開始する電圧値)に達し、さらに作動用電圧Vopがこの規定の電圧値以上に維持された時間が予め規定された遅延時間tdを超えたときにリセット信号Srstの出力を停止する。
次に、信号読取装置1Aの使用例、およびその際の信号読取装置1Aの動作について、図面を参照して説明する。
最初に、図1に示すように、使用者によって、信号読取装置1Aに接続された第1プローブPLaおよび第2プローブPLbがシリアルバスSBを構成する被覆導線La,Lbに接続されると共に、信号読取装置1Aに接続された出力ケーブルCBoが既存の外部機器(シリアルバスSBに伝送されているCANフレームを収集したり観測したりする電子機器)に接続される。
次いで、使用者は、外部から信号読取装置1Aへの直流電圧や交流電圧の供給を開始させる。信号読取装置1Aでは、電源部16が、この直流電圧や交流電圧に基づいて、作動用電圧Vopを生成すると共に、信号読取装置1Aの各構成要素への供給を開始する。この場合、作動用電圧Vopは、図3に示すように、信号読取装置1Aにおける基準電位の部位(グランドG)の電圧(ゼロボルト)から目標電圧値に向けて立ち上がる。
なお、電源部16が各構成要素を動作させるために作動用電圧Vopとして生成する電圧は、例えば+5Vや+15Vなどの正電圧だけでなく、例えば-5Vや-15Vなどの負電圧の場合もあり、正電圧の場合には、ゼロボルトからそれぞれの目標電圧(この例では、+5Vや+15V)に向けて立ち上がり、負電圧の場合には、ゼロボルトからそれぞれの目標電圧(この例では、-5Vや-15V)に向けて立ち下がることになる。パワーオンリセット部17は、正電圧の作動用電圧Vopに基づいてリセット信号Srstを出力する構成や負電圧の作動用電圧Vopに基づいてリセット信号Srstを出力する構成のいずれについても採用することが可能であるが、本例では、理解の容易のため、前者の構成を採用しているものとする。
パワーオンリセット部17は、電源部16から供給される作動用電圧Vopに基づいて、図3に示すように、作動用電圧Vopの立ち上がりの開始からリセット信号Srstの出力を開始し(リセット信号Srstの電圧(レベル)をローレベル(0V)とする動作を開始し)、その後に作動用電圧Vopが規定の電圧値(信号読取装置1Aの各構成要素が動作を開始する電圧値(例えば、目標電圧値の50%から60%程度の電圧値))に達し、さらに作動用電圧Vopがこの規定の電圧値以上に維持された時間が予め規定された遅延時間tdを超えたときにリセット信号Srstの出力を停止する(リセット信号Srstの電圧(レベル)をハイレベル(例えば、作動用電圧Vopの目標電圧値)とする)。
信号読取装置1Aでは、信号生成部12は、供給されている作動用電圧Vopの電圧値が規定の電圧値以上となったときから、シリアルバスSBについてのレベル状態がレセッシブ状態であるかドミナント状態であるかを検出しつつ、この検出したレベル状態に同期して、このレベル状態がレセッシブ状態のときには高電位側電圧(レセッシブに対応する電圧)に変化し、このレベル状態がドミナント状態のときには低電位側電圧(ドミナントに対応する電圧)に変化するレベル状態検出信号Sfを生成して出力する動作を開始する。しかしながら、信号生成部12は、この動作の開始直後(つまり、信号読取装置1Aの起動直後)においては、動作が安定していないことから、図3に示すように、シリアルバスSBに伝送されているCANフレームのデータフレーム構造に合致した正確なレベル状態検出信号Sfを生成し得ないことがある(つまり、信号生成部12が不正確な状態のレベル状態検出信号Sfをマスク部14に出力することがある)。
このような状況下においても、信号読取装置1Aでは、パワーオンリセット部17が、上記したように、作動用電圧Vopが規定の電圧値(信号読取装置1Aの各構成要素が動作を開始する電圧値)に達する前からリセット信号Srstの出力を開始しているため、マスク部14は、このリセット信号Srstに基づいて、動作を開始した時点からマスク出力処理を実行する。つまり、マスク部14は、入力されているレベル状態検出信号Sfをそのまま新たなレベル状態検出信号Sf1として出力するのではなく、図3に示すように、高電位側電圧(第1電圧レベル)に固定されたレベル状態検出信号Sf1の出力を実行する。また、マスク部14は、処理部15Aからセット信号Ssetが出力されるまで、マスク出力処理の実行を継続する。
信号変換部13は、このレベル状態検出信号Sf1を入力すると共に、送信信号としての差動信号(CAN通信方式の信号Vcva,Vcvb)に変換して出力するが、レベル状態検出信号Sf1は、レセッシブに対応する第1電圧レベルである高電位側電圧に固定されているため、レセッシブ状態を示す信号Vcva,Vcvbを出力する。したがって、信号読取装置1Aでは、起動直後において、動作が安定していない信号生成部12から出力される虞のある不正確な状態のレベル状態検出信号Sfがそのまま信号変換部13から信号Vcva,Vcvbに変換されて、外部機器に出力される事態の発生が防止(回避)されている。
処理部15Aは、起動時から出力切替処理を実行する。この出力切替処理では、処理部15Aは、レベル状態検出信号Sfを入力して、レベル状態検出信号Sfの電圧レベルを検出すると共に、この検出した電圧レベルが第2電圧レベルとしての低電位側電圧(ドミナントに対応する電圧であるグランドGの電位)から第1電圧レベルとしての高電位側電圧(レセッシブに対応する電圧)に変化した後、この高電位側電圧の状態(レセッシブ状態)が予め規定された基準時間(具体的には、EOFの出力時間、つまりレセッシブビットの7ビット分の時間)以上継続したときに、セット信号Ssetを出力する。
信号生成部12は、図3に示すように、起動直後から予め規定された時間t1(例えば、数秒から十数秒)が経過するまでには、動作が安定して、シリアルバスSBに伝送されているCANフレームのデータフレーム構造に合致した正確な状態のレベル状態検出信号Sfの生成および出力を開始する。
上記したように、データフレーム構造に合致した正確なレベル状態検出信号Sfにおいては、7ビットのレセッシブビットで構成されるEOFが必ず含まれる。また、このEOFの前に含まれるSOFからCRCの終わりまでの範囲では、ビットスタッフィングルールが適用されることから、この範囲には、ドミナントビットが1ビット以上必ず含まれる。したがって、処理部15Aは、実行している出力切替処理において、レベル状態検出信号Sfの電圧レベルが第2電圧レベルとしての低電位側電圧(ドミナントに対応する電圧)から第1電圧レベルとしての高電位側電圧(レセッシブに対応する電圧)に変化した後、この高電位側電圧の状態(レセッシブ状態)が予め規定された基準時間(レセッシブビットの7ビット分の時間)以上継続したことを、予め規定された時間t1内に検出して、マスク部14に対してセット信号Ssetを出力する。
マスク部14は、図3に示すように、セット信号Ssetを入力した時点で、マスク出力処理の実行に代えて、通常出力処理の実行を開始する。この通常処理では、マスク部14は、信号生成部12から出力されるレベル状態検出信号Sfをそのまま新たなレベル状態検出信号Sf1として信号変換部13に出力する。信号変換部13は、このレベル状態検出信号Sf1を入力すると共に、送信信号としての差動信号(信号Vcva,Vcvb)に変換して、外部機器に出力する。これにより、シリアルバスSBの規格に準じた信号であって、レベル状態検出信号Sfの電圧レベルに応じて(つまり、シリアルバスSBに伝送されているCANフレームのレベル状態に応じて)、レベル状態がレセッシブ状態またはドミナント状態に変化する信号Vcva,Vcvb(CAN信号またはCAN-FD信号)が、信号読取装置1Aを介して外部機器に出力される。
このように、この信号読取装置1Aでは、信号生成部12と信号変換部13との間に介装されて、起動時に上記のマスク出力処理の実行を開始するマスク部14を備え、処理部15Aが、レベル状態検出信号Sfの電圧レベルを検出しつつ、この検出した電圧レベルが第2電圧レベルとしての低電位側電圧(ドミナントに対応する電圧)から第1電圧レベルとしての高電位側電圧(レセッシブに対応する電圧)に変化した後、この第1電圧レベルが予め規定された基準時間(EOFの出力時間、つまりレセッシブビットの7ビット分の時間)以上継続したときに、マスク部14に対してマスク出力処理に代えて通常出力処理を実行させる出力切替処理を実行する。
したがって、この信号読取装置1Aによれば、起動直後におけるレベル状態が不正確な信号Vcva,Vcvb(CAN信号またはCAN-FD信号)の外部機器への出力を防止しつつ、起動直後から予め規定された時間t1が経過するまでには、検出しているシリアルバスSBに伝送されているCANフレームのレベル状態に応じて、レベル状態がレセッシブ状態またはドミナント状態に変化する正確な信号Vcva,Vcvbを外部機器に出力することができる。
また、この信号読取装置1Aでは、上記したように、処理部15Aが、予め規定された時間t1に亘って、レベル状態検出信号Sfの電圧レベルを検出しつつ、レベル状態検出信号Sfの第1電圧レベルの状態および第2電圧レベルの状態の各長さを計測して、この予め規定された時間t1内に、第2電圧レベルとなる状態についての最大連続時間長(最大で5ビット分の時間長)を超える基準時間(7ビット分の時間)以上となる第1電圧レベルとなる状態についての最大連続時間長(7ビット分の時間)を計測したときに、セット信号Ssetを出力する構成を採用することもできる。
そして、この構成を採用した信号読取装置1Aによれば、シリアルバスSBについてのボーレートが未知のときにおいても、処理部15Aが、予め規定された時間t1内において、信号生成部12がデータフレーム構造に合致した正確なレベル状態検出信号Sfの出力を開始したことを検出して、セット信号Ssetを出力することができることから、起動直後におけるレベル状態が不正確な信号Vcva,Vcvb(CAN信号またはCAN-FD信号)の外部機器への出力を防止しつつ、起動直後から予め規定された時間t1が経過するまでには、検出しているシリアルバスSBに伝送されているCANフレームのレベル状態に応じて、レベル状態がレセッシブ状態またはドミナント状態に変化する正確な信号Vcva,Vcvbを外部機器に出力することができる。
なお、上記の信号読取装置1Aでは、CPUなどで構成される処理部15Aが、レベル状態検出信号Sfを入力して、レベル状態検出信号Sfの電圧レベルを検出すると共に、この検出した電圧レベルに基づいて、セット信号Ssetを出力する構成を採用しているが、この構成に限定されるものではない。例えば、市販のCANコントローラ(例えば、MICROCHIP社製のMCP2515など)は、レベル状態検出信号Sfに相当する信号を入力すると共に、この信号で表されるCANフレームのプロトコルを解析して、解析した結果を出力する機能を備えている。すなわち、このCANコントローラは、レベル状態検出信号Sfに相当する信号であって、不正確な信号(起動直後に信号生成部12から出力されるような信号)を入力しているときには、この信号のプロトコルにCANフレームの正しいプロトコルに合致していない箇所が存在していることを解析して、合致していない旨を示すエラー信号を解析の結果として出力する。
以下において、市販のCANコントローラを使用して構成された信号読取装置1Bについて図4を参照して説明する。なお、上記した信号読取装置1Aと同一の構成については同一の符号を付して重複する説明を省略する。
信号読取装置1Bは、入力端子部11a,11b、信号生成部12、信号変換部13、マスク部14、処理部15B、電源部16およびパワーオンリセット部17に加えて、CANコントローラ18を備えている。また、信号読取装置1Bは、入力端子部11a,11bに接続された第1プローブPLaおよび第2プローブPLbを備えている。
この信号読取装置1Bでは、処理部15Bは、例えばCPUなどを用いて構成されて、CANコントローラ18から予め規定された時間t1内に、プロトコルにエラーがないことを示す結果が出力されたときに(本例では一例として、CANコントローラ18からエラー信号Serが、予め規定された他の時間t2(例えば、CANフレームで2~3フレーム分の時間)以上、継続して出力されなかったことを検出したときに)、マスク部14に対して上記のセット信号Ssetを出力して、マスク出力処理に代えて通常出力処理を実行させる出力切替処理を実行する。
したがって、この信号読取装置1Bによれば、市販のCANコントローラ18を使用することで、処理部15Bでの処理の負荷を軽減しながら、起動直後におけるレベル状態が不正確な信号Vcva,Vcvb(CAN信号またはCAN-FD信号)の外部機器への出力を防止し、また起動直後から予め規定された時間t1が経過するまでには、検出しているシリアルバスSBに伝送されているCANフレームのレベル状態に応じて、レベル状態がレセッシブ状態またはドミナント状態に変化する正確な信号Vcva,Vcvbを外部機器に出力することができる。
また、上記の信号読取装置1A,1Bでは、起動直後から予め規定された時間t1が経過するまでには、検出しているシリアルバスSBに伝送されているCANフレームのレベル状態に応じて、レベル状態が正しく第1電圧レベルとなる状態(レセッシブに対応する電圧の状態)になったり、第2電圧レベルとなる状態(ドミナントに対応する電圧の状態)になったりする(つまり、シリアルバスSBに伝送されているCANフレームのデータフレーム構造に合致した)正確なレベル状態検出信号Sfが信号生成部12から出力されるようになることを前提としているが、何らかの理由により、起動直後から予め規定された時間t1が経過した以降においても、正確なレベル状態検出信号Sfが信号生成部12から出力されないという事態に至ることもある。
このような事態に至る原因(理由)としては、信号読取装置1A,1B側に原因がある場合もあるが、シリアルバスSB側に原因がある場合もある。このような事態に至った状態において上記の信号読取装置1A,1Bでは、マスク部14がレベル状態検出信号Sf1をハイレベルに固定して出力する(レベル状態検出信号Sfをマスクする)動作を継続することから、信号読取装置1A,1Bは、接続された外部機器に対してレセッシブ状態に固定された信号Vcva,Vcvbを継続して出力するが、このままでは原因の特定が難しい。
一方、この場合において信号読取装置1A,1Bに対して信号生成部12から出力されるレベル状態検出信号Sfをマスクせずにそのまま信号Vcva,Vcvbに変換して外部機器に出力させる動作を実行させることで、使用者が外部機器を使用して、起動直後から継続して(具体的には、上記の時間t1が経過した以降においても)、正確なレベル状態検出信号Sfが信号生成部12から出力されない原因が信号読取装置1A,1B側にあるのかシリアルバスSB側にあるのかを特定できる場合もある。
そこで、処理部15A,15Bが上記の予め規定された時間t1内に出力切替処理を実行していないときには、この時間t1が経過した時点で出力切替処理を実行して、マスク部14に対してセット信号Ssetを出力するという構成を、信号読取装置1A,1Bにおいて採用することもできる。この構成を採用することで、上記したように、信号生成部12から出力されるレベル状態検出信号Sfがマスクされずにそのまま信号Vcva,Vcvbに変換されて外部機器に出力されるため、使用者が外部機器を使用して、上記の原因を特定することも可能となる。
また、上記の信号読取装置1A,1Bでは、一例として金属非接触型の第1プローブPLaおよび第2プローブPLbを使用する構成を採用しているが、被覆導線La,Lbの各芯線に直接接続される接触型のプローブを使用する構成であってもよいのは勿論である。また、上記の信号読取装置1A,1Bでは、処理部15A,15Bとは別体にパワーオンリセット部17を有する構成を採用しているが、処理部15A,15BをDSPで構成するときには、処理部15A,15Bにパワーオンリセット部17と同等の機能を備えた回路を内蔵させる構成を採用することもできる。