JPWO2014068747A1 - 変換装置、周辺装置およびプログラマブルコントローラ - Google Patents

変換装置、周辺装置およびプログラマブルコントローラ Download PDF

Info

Publication number
JPWO2014068747A1
JPWO2014068747A1 JP2014544161A JP2014544161A JPWO2014068747A1 JP WO2014068747 A1 JPWO2014068747 A1 JP WO2014068747A1 JP 2014544161 A JP2014544161 A JP 2014544161A JP 2014544161 A JP2014544161 A JP 2014544161A JP WO2014068747 A1 JPWO2014068747 A1 JP WO2014068747A1
Authority
JP
Japan
Prior art keywords
filter
storage unit
conversion
data storage
digital
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014544161A
Other languages
English (en)
Other versions
JP5680259B2 (ja
Inventor
健太郎 栂野
健太郎 栂野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP5680259B2 publication Critical patent/JP5680259B2/ja
Publication of JPWO2014068747A1 publication Critical patent/JPWO2014068747A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/102Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03HIMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
    • H03H17/00Networks using digital techniques
    • H03H17/02Frequency selective networks
    • H03H17/06Non-recursive filters
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M1/00Analogue/digital conversion; Digital/analogue conversion
    • H03M1/12Analogue/digital converters

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Programmable Controllers (AREA)
  • Analogue/Digital Conversion (AREA)

Abstract

高速なA/D変換周期を維持したまま、ユーザの所望するフィルタ特性を持ったデジタルフィルタ処理を実現するために、A/D変換装置100は、A/D変換後の複数のデジタル値の夫々が遅延量に応じた固定のアドレスに位置するように記憶する入力データ記憶部131と、係数データ記憶部132と、デジタルフィルタ処理実行要求が入力されたとき、予め設定されたフィルタ特性に基づいて次数とフィルタ係数とを算出し、算出したフィルタ係数の夫々を、対応する遅延量順に配列するとともに対応する遅延量に応じた固定のアドレスに位置するように係数データ記憶部132に格納する係数データ演算部134と、デジタル値を入力データ記憶部131から、フィルタ係数を係数データ記憶部132から、遅延量毎に夫々読出して、読出した遅延量毎の値に基づくフィルタ演算を実行するデジタルフィルタ演算部133と、を備える。

Description

本発明は、アナログデジタル変換(A/D変換)を行う変換装置、ユーザからの操作に応じて前記変換装置の操作または設定を行う周辺装置および前記変換装置を備えるプログラマブルコントローラに関する。
プログラマブルコントローラ(Programmable Logic Controller、PLC)に、アナログデータを入力する場合、PLCは、アナログ値をデジタル値に変換する変換装置(以降、A/D変換装置)が組み込まれて構成される。A/D変換装置に入力されるアナログ値には、PLCが設置される環境に応じた様々なノイズ成分が含まれる。特に近年ではA/D変換装置のA/D変換周期が高速化しており、従来のA/D変換装置では感知しなかったノイズも入力されるようになってきた。A/D変換装置には、ノイズを減衰させる機能として、平均処理機能やデジタルフィルタ機能が搭載されている。A/D変換装置に搭載されるデジタルフィルタとしては、1次遅れフィルタ、ローパスフィルタ等がある。A/D変換装置は、ユーザが用途に応じてこれらのフィルタの使い分けを行うことができるように構成されている。A/D変換装置は、ユーザが取得したい信号の周波数帯とノイズ成分の周波数帯を分け、ノイズ成分を減衰せしめることができる。
しかしながら、従来のPLCに実装されるA/D変換装置によれば、所望するフィルタ特性が得られない場合、ユーザはユーザプログラムにてフィルタ演算を実現する必要があった。ユーザプログラムを用いてフィルタ演算を実行することは、プログラムの作成工数の増加およびCPUのスキャンタイムの増大を引き起こす。
また、PLCが設置される各種生産装置では、1つの装置で複数の製品を生産可能にすることが多い。そのような場合、生産する製品を切り替える際は、外部スイッチや、プログラマブル表示器の画面押下によりPLC内のプログラムを変更し、稼動させるパラメータを、一括で変更する。このとき、PLC内のプログラムや、プログラマブル表示器からの要求で容易にA/D変換装置内のパラメータを変更する手段が求められる。
これに対し、例えば特許文献1には、過去の入力データをリングバッファに記憶すると共に、デジタルフィルタ処理に必要な係数データのセットを2つ、メモリに記憶しておく技術が開示されている。この技術によれば、リングバッファ処理のための終端判定処理を不要とし、結果として演算を高速化することができる。
また、例えば特許文献2には、外部から入力されたフィルタ特性に応じて係数データを算出することができる装置が開示されている。
特開2007−43731号公報 特開昭58−147223号公報
しかしながら、上記特許文献1の技術によれば、演算時間の高速化が図れる反面、係数データを格納するためのメモリ領域のサイズが、最低限必要なサイズの約2倍のサイズとなるため、メモリ使用量が大きくなるという問題があった。
また、特許文献2の技術によれば、PLCに実装されるA/D変換装置に求められる、PLCやプログラマブル表示器からのパラメータ変更要求に応答する手段が無いという問題があった。
本発明は、上記に鑑みてなされたものであって、高速なA/D変換周期を維持したまま、ユーザの所望するフィルタ特性を持ったデジタルフィルタ処理を実現することが可能なA/D変換装置、周辺装置およびプログラマブルコントローラを得ることを目的とする。
上述した課題を解決し、目的を達成するために、本発明は、アナログ値をA/D変換周期毎に逐次デジタル値に変換し、出力するA/D変換部と、最も新しく出力された複数のデジタル値を遅延量順に配列し、前記複数のデジタル値の夫々が遅延量に応じた固定のアドレスに位置するように記憶する入力データ記憶部と、フィルタ特性を指定する設定情報を記憶するフィルタ特性記憶部と、フィルタ係数を記憶する係数データ記憶部と、実行要求を受け付ける受け付け部と、前記受け付け部が前記実行要求を受け付けたとき、前記フィルタ特性記憶部から設定情報を読出して前記読出した設定情報に基づいて次数と前記次数の数のフィルタ係数とを算出し、前記算出したフィルタ係数の夫々を、対応する遅延量順に配列するとともに対応する遅延量に応じた固定のアドレスに位置するように前記係数データ記憶部に格納する係数データ演算部と、前記算出した次数の数のデジタル値を前記入力データ記憶部から、前記算出した次数の数のフィルタ係数を前記係数データ記憶部から、格納されたアドレスに基づいて遅延量毎に夫々読出して、前記読出した遅延量毎の値に基づくフィルタ演算を実行し、演算結果を出力する動作を、A/D変換周期毎に実行するデジタルフィルタ演算部と、を備えることを特徴とする。
本発明にかかる変換装置は、実行要求を受け付けると、指定されたフィルタ特性を持つデジタルフィルタを適用したデジタル値の出力を開始することができ、かつ、A/D変換周期毎にデジタルフィルタ処理を実行できるため、高速なA/D変換周期を維持したままユーザの所望するフィルタ特性を持ったデジタルフィルタ処理を実現するという効果を奏する。
図1は、PLCシステムの構成を示すブロック図である。 図2は、FIRフィルタの回路図である。 図3は、入力データ記憶部のメモリ構成を示す図である。 図4は、係数データ記憶部のメモリ構成を示す図である。 図5は、A/D変換装置の動作を説明するフローチャートである。
以下に、本発明にかかるA/D変換装置、周辺装置およびプログラマブルコントローラ(以降、PLC)の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態.
図1は、A/D変換装置が実装されたPLCシステムの構成を示すブロック図である。図1に示すPLCシステム10は、PLC1000と周辺装置2000とを備える。PLC1000と周辺装置2000とは、接続ケーブル3000を介して互いに接続される。
周辺装置2000は、ユーザからの入力に応じてPLC1000の操作または設定を実行することができる。周辺装置2000は、本発明の実施の形態のA/D変換装置100に対してフィルタ特性を入力するフィルタ特性入力支援ツール500を備える。フィルタ特性入力支援ツール500はフィルタ特性入力ソフトウェアが周辺装置2000にインストールされることにより、実現される。具体的には、周辺装置2000は、CPU(Central Processing Unit)、フィルタ特性入力ソフトウェアを予め記憶するROM(Read Only Memory)、RAM(Random Access Memory)、ユーザからの入力を受け付けるマウスやキーボードなどで構成される、ユーザからの直接の操作を受け付ける入力装置、および液晶ディスプレイなどで構成される表示装置を備える。そして、CPUは、当該フィルタ特性入力ソフトウェアをRAMに展開し、RAMに展開された当該フィルタ特性入力ソフトウェアによる制御に基づいて、フィルタ特性入力支援ツール500として機能する。フィルタ特性入力支援ツール500が生成する表示内容は表示装置に表示される。ユーザは、当該表示内容を確認しながら入力装置を操作することによってフィルタ特性入力支援ツール500に対する操作を行うことができる。
PLC1000は、A/D変換装置100とCPU装置200とを備える。なお、PLC1000は、さらに図示しない装置を備えてもよい。A/D変換装置100、CPU装置200以外の、PLC1000が具備可能な装置として、例えば、サーボアンプを制御することにより多軸の位置制御を実現するモーションコントローラ装置、または、CPU装置200からの指令に基づき温度制御信号を出力する温度コントローラ装置が該当する。PLC1000が備える各装置は、互いに装置間バス300を介して接続される。
CPU装置200は、CPU装置200全体の制御を実行する演算部220と、メモリカードなどの外部メモリと接続される外部メモリインタフェース210と、内蔵メモリ230とを備える。外部メモリまたは内蔵メモリ230には、ユーザプログラム、ユーザプログラムの実行に用いられるデータ、およびユーザプログラムの実行結果データが記憶される。ここで、ユーザプログラムとは、PLC1000が制御対象とする外部機器を制御するためのプログラムであり、例えばラダー言語またはC言語を用いて記述されている。また、CPU装置200は、周辺装置2000と接続される周辺装置インタフェース240と、装置間バス300と接続されるバスインタフェース250とを備える。外部メモリインタフェース210、演算部220、内蔵メモリ230、周辺装置インタフェース240、およびバスインタフェース250は、互いに内部バス260を介して接続される。
CPU装置200は、ユーザプログラムの実行、ユーザプログラムの実行に用いるデータの読出し、およびユーザプログラムの実行結果の書込みを、所定の制御周期毎に繰り返して行う。この制御周期は、CPU装置200が実行するユーザプログラムの実行周期に等しい。このユーザプログラムの実行結果の書込みには、後述するA/D変換装置100の共用メモリ140にフィルタ特性、デジタルフィルタ処理実行要求またはデジタルフィルタ処理停止要求を書込む動作が含まれる。
A/D変換装置100は、A/D変換装置100全体を制御する演算部130と、CPU装置200からの書込みおよび読出しが可能に構成された共用メモリ140と、A/D変換部120とを備える。また、A/D変換装置100は、PLC1000が制御対象とする外部機器(即ち被制御装置)に接続されるアナログ入力インタフェース110と、トリガ信号を入力する外部入力端子に接続されるトリガ信号入力インタフェース150と、装置間バス300に接続されるバスインタフェース160と、A/D変換周期毎にカウンタ信号を出力するカウンタ180と、内蔵メモリ190とを備える。A/D変換周期とは、1つのアナログ値をデジタル値へ変換する周期として設定される値である。
演算部130、共用メモリ140およびバスインタフェース160は、互いに内部バス170を介して接続される。また、A/D変換部120は演算部130に接続され、アナログ入力インタフェース110はA/D変換部120に接続される。また、トリガ信号入力インタフェース150は、演算部130に接続される。
A/D変換部120は、カウンタ180がカウンタ信号を出力する毎に(即ちA/D変換周期毎に)、被制御装置が出力するアナログ値をアナログ入力インタフェース110を介して取り込む。そして、A/D変換部120は、取り込んだアナログ値を順次デジタル値に変換して出力する。
演算部130は、入力データに対してデジタルフィルタ処理を実行することができる。入力データとは、A/D変換部120から得られたA/D変換周期毎のデジタル値である。ここで、演算部130は、デジタルフィルタ処理のうちの一例として、FIR(Finite Impulse Response)型のデジタルフィルタ(以降、FIRフィルタ)としての処理を実行するものとして説明する。
図2は、FIRフィルタの回路図である。ここで、Z−1は単位遅延回路であり、h〜hはフィルタ係数(h〜h)を乗算する乗算器である。FIRフィルタの回路によると、入力データxが逐次入力され、出力データyが逐次出力される。iサイクル目の入力データをx[i]、iサイクル目の出力データをy[i]とすると、出力データy[n]は、以下の式で与えられる。
y[n]=h*x[n]+h*x[n−1]+・・・+hN−1*x[n−(N−1)]+h*x[n−N] 式(1)
なお、図2においては、FIRフィルタの次数をN+1としている。次数とは、処理に使用される乗算器の個数をいう。
上記したデジタルフィルタ処理を実現するために、演算部130は、入力データ記憶部131、係数データ記憶部132、デジタルフィルタ演算部133、係数データ演算部134およびメイン処理部135を備えている。
図3は、入力データ記憶部131のメモリ構成を示す図である。入力データ記憶部131には、A/D変換部120からの入力データがA/D変換周期毎に格納される。入力データ記憶部131は、N+1個の入力データを、アドレスが連続した一塊のメモリ領域の先頭から遅延量順に配列して記憶する。入力データ記憶部131が新しい入力データを新たに記憶する際には、入力データ記憶部131が記憶するN+1点の入力データが1点ずつシフトされ、最も古いデータが削除される。そして、新しい入力データが入力データ記憶部131を構成するメモリ領域の先頭に追加される。
なお、入力データ記憶部131の記憶方式は、最も新しく出力された複数のデジタル値を遅延量順に配列し、複数のデジタル値の夫々が遅延量に応じた固定のアドレスに位置するように記憶する方式であれば、上記に限定されない。例えば、入力データ記憶部131は、最も古いデジタル値を先頭として遅延量順に記憶してもよい。
なお、ここでは一例として、入力データ記憶部131の記憶内容の操作(入力データの追加、削除、およびシフト)は後述のデジタルフィルタ演算部133によって実行されるものとして説明する。
また、入力データ記憶部131は、ハードウェア回路により構成されてもよい。例えば、入力データ記憶部131は、シフトレジスタにより構成され、デジタルフィルタ演算部133がシフト用の制御信号を操作することによって入力データの追加、削除、およびシフトが実現されるようにしてよい。また、カウンタ180によるカウンタ信号をシフト用の制御信号として使用されるようにしてもよい。また、入力データ記憶部131は、小規模なメモリ装置により構成されるようにしてもよい。また、内蔵メモリ190を入力データ記憶部131として機能させるようにしてもよい。
図4は、係数データ記憶部132のメモリ構成を示す図である。係数データ記憶部132は、アドレスが連続した一塊のメモリ領域を具備し、係数データh〜hが、遅延量順に先頭から配列されて格納される。言い換えると、係数データ記憶部132は、係数データh〜hの夫々が、対応する遅延量順に配列され、係数データh〜hの夫々が、対応する遅延量に応じた固定のアドレスに位置するように、係数データh〜hの夫々を記憶する。係数データh〜hを係数データ記憶部132に格納する動作は後述の係数データ演算部134によって実行される。係数データ記憶部132に記憶される係数データの数は、係数データ演算部134が算出した次数に依存する。なお、係数データ記憶部132は、小規模なメモリ装置によって構成されてもよいし、レジスタなどのハードウェア回路によって構成されてもよい。また、内蔵メモリ190を係数データ記憶部132として機能させるようにしてもよい。
デジタルフィルタ演算部133は、出力データを求める演算(デジタルフィルタ演算)を実行する。デジタルフィルタ演算部133は、入力データ記憶部131から入力データを、係数データ記憶部132から係数データを、遅延量毎に夫々1つずつ読み出す。そして、デジタルフィルタ演算部133は、読出した値を用いて式(1)の演算を実行する。なお、可及的に高速なデジタルフィルタ演算を実現するために、デジタルフィルタ演算部133を図2に示したハードウェア回路で実現するようにしてもよい。
係数データ演算部134は、ユーザが所望するフィルタ特性を元に、デジタルフィルタ演算に必要な次数およびフィルタ係数を算出する。そして、係数データ演算部134は、算出した係数データおよび次数を係数データ記憶部132へ書き込む。FIRフィルタは、フィルタ係数の組み合わせにより、ローパスフィルタ、ハイパスフィルタ、バンドパスフィルタのいずれにも適用できるという特徴を持つ。フィルタ係数の算出手法は、広く知られているため、ここでは説明を省略する。
メイン処理部135は、A/D変換装置100全体の挙動を制御するためのものである。本実施の形態では、メイン処理部135は、バスインタフェース160と協働して、CPU装置200または周辺装置2000から送られてきた各種要求(後述のデジタルフィルタ処理実行要求、デジタルフィルタ処理停止要求)および設定情報を受け付ける受け付け部として機能する。また、メイン処理部135は、A/D変換部120より入力された値に対して、各種演算を加え、各種機能に応じたデジタル値を出力するものである。
共用メモリ140は、フィルタ特性記憶領域141を備える。フィルタ特性記憶領域141はフィルタ特性、デジタルフィルタ処理実行要求およびデジタルフィルタ処理停止要求を記憶するためのメモリ領域である。
フィルタ特性記憶領域141に格納されるフィルタ特性(設定情報)は、周波数応答特性であって、例えば入力データの周波数と、除去したいノイズの周波数に応じてユーザにより決められる。フィルタ特性記憶領域141に設定されるフィルタ特性は、例えば、ローパスフィルタ、バンドパスフィルタあるいはハイパスフィルタ等、フィルタの種類を指定するデータであってよい。また、フィルタ特性記憶領域141に設定されるフィルタ特性は、通過帯域、減衰帯域または阻止帯域を指定するデータであってよい。
ここで、フィルタ特性は、次の2通りのうちいずれかの方法により、フィルタ特性記憶領域141に書き込まれる。1つ目の方法は、CPU装置200の演算部220が、内蔵メモリ230または外部メモリに記憶されたユーザプログラムを実行することによりフィルタ特性を作成し、このフィルタ特性をフィルタ特性記憶領域141に書き込むものである。これは、フィルタ特性記憶領域141を、CPU装置200から直接書込み可能な共用メモリ140に設けたことにより実現される。
2つ目の方法は、まずユーザが外部の周辺装置2000のフィルタ特性入力支援ツール500にフィルタ特性を入力する。次に、フィルタ特性入力支援ツール500は、入力されたフィルタ特性を、CPU装置200および装置間バス300を介してフィルタ特性記憶領域141に書き込む。なお、フィルタ特性入力支援ツール500が描画画面を表示画面に表示して周波数特性を示す曲線の入力を促して、フィルタ特性入力支援ツール500は、前記描画画面を介して入力された曲線を以って入力されたフィルタ特性として扱うようにしてよい。
また、デジタルフィルタ処理実行要求は、フィルタ特性の変更のトリガとして機能する情報である。即ち、メイン処理部135は、デジタルフィルタ処理実行要求が前記フィルタ特性記憶領域141に書き込まれたことを検知したとき、係数データ演算部134にフィルタ係数を更新せしめることができる。ここでは、簡単のために、デジタルフィルタ処理実行要求は、係数データ演算部134およびデジタルフィルタ演算部133の処理を開始するトリガとして用いられ、デジタルフィルタ処理停止要求は、デジタルフィルタ演算部133の処理を停止するトリガとして用いられることとして説明する。
なお、所定のフラグ情報をデジタルフィルタ処理実行要求およびデジタルフィルタ処理停止要求として用いるようにしてもよい。即ち、例えば、フラグ情報の値が「1」であることを以ってデジタルフィルタ処理実行要求が書き込まれたものとし、フラグ情報の値が「0」であることを以ってデジタルフィルタ処理停止要求が書き込まれたものとすることが可能である。
なお、A/D変換装置100は、デジタルフィルタ処理実行要求およびデジタルフィルタ処理停止要求を次の3つの方法のいずれか1つにより受け付けることができる。
・CPU装置200から発行される要求を受け付ける方法
・フィルタ特性入力支援ツール500から発行される要求を受け付ける方法
・演算部130の演算結果により、演算部130自身が要求を発行し、当該要求を受け付ける方法
・トリガ信号入力インタフェース150から入力されるトリガ信号を要求として受け付ける方法
なお、フィルタ特性記憶領域141は、複数のフィルタ特性を記憶するようにしてもよい。例えば、受け付け部は、デジタルフィルタ処理実行要求とともに、フィルタ特性記憶領域141が記憶する複数のフィルタ特性のうちの一を指定するフィルタ特性指定データを受け付け、係数データ演算部134は、デジタルフィルタ処理実行要求の入力をトリガとして、フィルタ特性指定データにより指定されたフィルタ特性に基づいて次数およびフィルタ係数の算出をするようにしてよい。
また、共用メモリ140は、デジタル値を記憶するためのデジタル値記憶領域142を備える。デジタル値記憶領域142に記憶されるデジタル値は、デジタルフィルタ演算部133からの出力データである。
なお、デジタルフィルタ演算部133により出力されたデジタル値は、メイン処理部135において加工された後にデジタル値記憶領域142に格納されるようにしてよい。
次に、本発明の実施の形態のA/D変換装置100の動作を説明する。図5は、本発明の実施の形態のA/D変換装置100の動作を説明するフローチャートである。
まず、メイン処理部135は、デジタルフィルタ処理実行要求が有ったか否かを判定する(ステップS1)。デジタルフィルタ処理実行要求の有無は、フィルタ特性記憶領域141へのデジタルフィルタ処理実行要求の書込みの有無に基づいて判定される。デジタルフィルタ処理実行要求が無い場合(ステップS1、No)、メイン処理部135は、ステップS1の判定処理を再び実行する。
デジタルフィルタ処理実行要求が有った場合(ステップS1、Yes)、係数データ演算部134は、フィルタ特性記憶領域141からフィルタ特性を読出し、フィルタ係数および次数を演算する(ステップS2)。ステップS2において、フィルタ係数を正常に算出できた場合(ステップS3、Yes)、フィルタ係数を係数データ記憶部132に格納する(ステップS4)。
フィルタ係数が正常に算出できなかった場合(ステップS3、No)、ステップS1の処理が再び実行される。フィルタ係数が正常に算出できない場合とは、例えば、入力されたフィルタ特性に矛盾がある場合や、A/D変換装置100では処理できない値が入力された場合等が該当する。
ステップS4の処理の後、デジタルフィルタ演算部133は、次のA/D変換周期に達したか否かを判定する(ステップS5)。次のA/D変換周期に達していない場合(ステップS5、No)、デジタルフィルタ演算部133は、ステップS5の処理を再び実行することで、A/D変換周期に達するまで待つ。
次のA/D変換周期に達している場合(ステップS5、Yes)、デジタルフィルタ演算部133は、入力データ記憶部131が記憶する入力データを1点ずつ隣のアドレスへシフトするとともに、最も古いデータを削除する(ステップS6)。そして、デジタルフィルタ演算部133は、A/D変換部120が生成したデジタル値を入力データ記憶部131の先頭に格納する(ステップS7)。
次に、デジタルフィルタ演算部133は、出力データ、入力データ読出しアドレス、係数データ読出しアドレスを初期化する(ステップS8)。ここで、入力データ読出しアドレスは、図3に示すように、入力データ記憶部131が具備するメモリ領域内の位置を示すポインタである。また、係数データ読出しアドレスは、図4に示すように、係数データ記憶部132が具備するメモリ領域内の位置を示すポインタである。入力データ記憶部131の先頭アドレスに最も新しい入力データが格納され、係数データ記憶部132の先頭アドレスに最も新しい入力データに対応するフィルタ係数が格納されているため、ステップS8の処理においては入力データ読出しアドレスおよび係数データ読出しアドレスがともにアドレス0に初期化される。なお、入力データ読出しアドレスおよび係数データ読出しアドレスの記憶位置は特に限定されない。
次に、デジタルフィルタ演算部133は、ステップS9およびステップS14をループ端とするループ処理を、次数分だけ繰り返す(ステップS9)。なお、次数はステップS2により算出された値である。
ループ処理内において、デジタルフィルタ演算部133は、入力データ記憶部131から、入力データ読出しアドレスで指定された入力データを読み出す(ステップS10)。そして、デジタルフィルタ演算部133は、係数データ記憶部132から、係数データ読出しアドレスで指定されたフィルタ係数を読み出す(ステップS11)。
そして、デジタルフィルタ演算部133は、読出した入力データとフィルタ係数とを乗算し、当該乗算により得られた値を中間データに加算する(ステップS12)。なお、中間データの記憶位置は特に限定されない。例えば中間データは内蔵メモリ190に格納されるようにしてよい。
そして、デジタルフィルタ演算部133は、入力データ読出しアドレス、係数データ読出しアドレスを夫々インクリメントする(ステップS13)。
そして、デジタルフィルタ演算部133は、次数分だけ繰り返したか否かを判定する(ステップS14)。繰り返し回数が次数分に満たない場合、デジタルフィルタ演算部133は、ステップS9の処理に戻る。繰り返し回数が次数に一致する場合、デジタルフィルタ演算部133は、ループ処理を抜ける。
ループ処理を抜けた後、デジタルフィルタ演算部133は、ループ処理後の中間データを出力データとしてデジタル値記憶領域142に格納する(ステップS15)。
次に、メイン処理部135は、デジタルフィルタ処理停止要求が有るか否かを確認する(ステップS16)。デジタルフィルタ処理停止要求の有無は、フィルタ特性記憶領域141へのデジタルフィルタ処理停止要求の書込みの有無に基づいて判定される。デジタルフィルタ処理停止要求が無い場合(ステップS16、No)、デジタルフィルタ演算部133は、ステップS5の処理を再び実行する。
デジタルフィルタ処理停止要求が有る場合(ステップS16、Yes)、ステップS1の判定処理が再び実行される。
以上述べたように、本発明の実施の形態によれば、A/D変換装置100は、最も新しく出力された複数のデジタル値を遅延量順に配列し、複数のデジタル値の夫々が遅延量に応じた固定のアドレスに位置するように記憶する入力データ記憶部131と、フィルタ特性を指定する設定情報を記憶するフィルタ特性記憶領域141と、フィルタ係数を記憶する係数データ記憶部132と、デジタルフィルタ処理実行要求を受け付ける受け付け部としてのメイン処理部135およびバスインタフェース160と、受け付け部がデジタルフィルタ処理実行要求を受け付けたとき、フィルタ特性記憶領域141が記憶するフィルタ特性に基づいて次数と前記次数の数のフィルタ係数とを算出し、算出したフィルタ係数の夫々を、対応する遅延量順に配列するとともに対応する遅延量に応じた固定のアドレスに位置するように係数データ記憶部132に格納する係数データ演算部134と、次数の数のデジタル値を入力データ記憶部131から、次数の数のフィルタ係数を係数データ記憶部132から、格納されたアドレスに基づいて遅延量毎に夫々読出して、読出した遅延量毎の値に基づくフィルタ演算を実行し、演算結果を出力する動作を、A/D変換周期毎に実行するデジタルフィルタ演算部133と、を備える。これにより、A/D変換装置100は、デジタルフィルタ処理実行要求を受け付けると、指定されたフィルタ特性を持つデジタルフィルタを適用したデジタル値の出力を開始することができるので、ユーザの所望するフィルタ特性を持ったデジタルフィルタ処理を実現することが可能となる。また、A/D変換装置100は、入力データの夫々を遅延量に応じた固定のアドレスに記憶するので、デジタル値をリングバッファに格納した場合に必要となる終端判定処理を不要とすることで、A/D変換の処理にかかる負荷が低減される。また、A/D変換装置100は、フィルタ係数の夫々を遅延量に応じた固定のアドレスに記憶するので、フィルタ係数を記憶するための領域のサイズの肥大化を防止することができる。また、A/D変換装置100は、A/D変換周期毎にデジタルフィルタ処理を実行できるため、デジタルフィルタ処理が無いときと同じ周期でデジタル値を出力することができる。即ち、A/D変換部120の変換速度と等しい高速なA/D変換周期を維持したままデジタルフィルタ処理後のデジタル値を得ることができるようになる。
また、A/D変換装置100は、周辺装置2000またはCPU装置200などの外部装置が接続され、受け付け部は、外部装置から実行要求を受け付ける。これにより、ユーザは、フィルタ特性を書き換えるとともに、周辺装置2000を介してデジタルフィルタ実行要求を入力することができるため、PLC1000が設置された装置が扱う製品に応じて、デジタルフィルタの特性を自由に変更することができる。これにより、複数製品を扱う生産ラインであっても、製品毎にデジタルフィルタの特性を簡単に変更することができるようになる。
フィルタ特性記憶領域141は、異なる複数の設定情報を記憶し、受け付け部は、デジタルフィルタ処理実行要求とともに、外部装置からフィルタ特性記憶領域141に格納された複数の設定情報のうちの一を指定するフィルタ特性指定データを受け付け、係数データ演算部134は、フィルタ特性指定データにより指定されたフィルタ特性に基づいて次数およびフィルタ係数を算出する。これにより、ユーザは、製品毎にデジタルフィルタの特性を簡単に変更することができるようになる。
なお、PLC1000のHMI(Human Machine Interface)として機能するプログラマブル表示器も、本発明の実施の形態の周辺装置2000の概念の範疇に含まれる。即ち、ユーザは、プログラマブル表示器から簡単にデジタルフィルタの特性を変更できる。
また、受け付け部は、外部装置からフィルタ特性の入力を受け付けてフィルタ特性記憶領域141に格納する。これにより、ユーザは、外部装置からフィルタ特性を設定することができる。
以上のように、本発明にかかる変換装置、周辺装置およびプログラマブルコントローラは、A/D変換を行う変換装置、ユーザからの操作に応じて変換装置の操作または設定を行う周辺装置および変換装置を備えるプログラマブルコントローラに適用して好適である。
100 A/D変換装置、110 アナログ入力インタフェース、120 A/D変換部、130 演算部、131 入力データ記憶部、132 係数データ記憶部、133 デジタルフィルタ演算部、134 係数データ演算部、135 メイン処理部、140 共用メモリ、141 フィルタ特性記憶領域、142 デジタル値記憶領域、150 トリガ信号入力インタフェース、160 バスインタフェース、170 内部バス、180 カウンタ、200 CPU装置、210 外部メモリインタフェース、220 演算部、230 内蔵メモリ、240 周辺装置インタフェース、250 バスインタフェース、260 内部バス、300 装置間バス、500 フィルタ特性入力支援ツール、2000 周辺装置、3000 接続ケーブル。

Claims (11)

  1. アナログ値をA/D変換周期毎に逐次デジタル値に変換し、出力するA/D変換部と、
    最も新しく出力された複数のデジタル値を遅延量順に配列し、前記複数のデジタル値の夫々が遅延量に応じた固定のアドレスに位置するように記憶する入力データ記憶部と、
    フィルタ特性を指定する設定情報を記憶するフィルタ特性記憶部と、
    フィルタ係数を記憶する係数データ記憶部と、
    実行要求を受け付ける受け付け部と、
    前記受け付け部が前記実行要求を受け付けたとき、前記フィルタ特性記憶部から設定情報を読出して前記読出した設定情報に基づいて次数と前記次数の数のフィルタ係数とを算出し、前記算出したフィルタ係数の夫々を、対応する遅延量順に配列するとともに対応する遅延量に応じた固定のアドレスに位置するように前記係数データ記憶部に格納する係数データ演算部と、
    前記算出した次数の数のデジタル値を前記入力データ記憶部から、前記算出した次数の数のフィルタ係数を前記係数データ記憶部から、格納されたアドレスに基づいて遅延量毎に夫々読出して、前記読出した遅延量毎の値に基づくフィルタ演算を実行し、演算結果を出力する動作を、A/D変換周期毎に実行するデジタルフィルタ演算部と、
    を備えることを特徴とする変換装置。
  2. 前記変換装置は、外部装置が接続され、
    前記受け付け部は、前記外部装置から前記実行要求を受け付ける、
    ことを特徴とする請求項1に記載の変換装置。
  3. 前記フィルタ特性記憶部は異なる複数の設定情報が格納され、
    前記受け付け部は、前記実行要求とともに、前記フィルタ特性記憶部に格納された複数の設定情報のうちの一を指定する指定要求を前記外部装置から受け付け、
    前記係数データ演算部は、前記指定要求により指定された設定情報に基づいて次数とフィルタ係数とを算出する、
    ことを特徴とする請求項2に記載の変換装置。
  4. 前記受け付け部は、前記外部装置から前記設定情報を受け付けて、前記受け付けた設定情報を前記フィルタ特性記憶部に格納する、
    ことを特徴とする請求項2または3に記載の変換装置。
  5. 前記外部装置は、ユーザからの直接の操作を受け付ける周辺装置、または、自変換装置とともにプログラマブルコントローラを構成するCPU装置である、
    ことを特徴とする請求項4に記載の変換装置。
  6. 前記設定情報は、ローパスフィルタ、ハイパスフィルタもしくはバンドパスフィルタを含むフィルタ種類を指定する情報、または、通過帯域、減衰帯域もしくは阻止帯域を指定する情報である、
    ことを特徴とする請求項5に記載の変換装置。
  7. 前記フィルタ演算は、前記係数データ記憶部から読出したデジタル値と前記係数データ記憶部から読出したフィルタ係数とを遅延量毎に個別に乗算し、前記遅延量毎の乗算結果の値を累積することである、
    ことを特徴とする請求項6に記載の変換装置。
  8. ユーザからの操作に応じて請求項1に記載の変換装置に前記実行要求を入力することを特徴とする周辺装置。
  9. 前記ユーザからフィルタ特性の入力を受け付けて、前記入力されたフィルタ特性を設定情報に記述して前記フィルタ特性記憶部に格納する、ことを特徴とする請求項8に記載の周辺装置。
  10. 前記フィルタ特性記憶部に異なる複数の設定情報を格納せしめ、前記実行要求とともに、前記ユーザからの操作に応じて、前記フィルタ特性記憶部に格納された複数の設定情報のうちの一を指定する指定要求を前記変換装置に入力する、ことを特徴とする請求項9に記載の周辺装置。
  11. 請求項1に記載の変換装置と、
    予め記憶するユーザプログラムに基づいて前記実行要求を前記変換装置に入力するCPU装置と、
    を備えることを特徴とするプログラマブルコントローラ。
JP2014544161A 2012-11-01 2012-11-01 変換装置、周辺装置およびプログラマブルコントローラ Active JP5680259B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/078331 WO2014068747A1 (ja) 2012-11-01 2012-11-01 変換装置、周辺装置およびプログラマブルコントローラ

Publications (2)

Publication Number Publication Date
JP5680259B2 JP5680259B2 (ja) 2015-03-04
JPWO2014068747A1 true JPWO2014068747A1 (ja) 2016-09-08

Family

ID=50626713

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014544161A Active JP5680259B2 (ja) 2012-11-01 2012-11-01 変換装置、周辺装置およびプログラマブルコントローラ

Country Status (7)

Country Link
US (1) US9411752B2 (ja)
JP (1) JP5680259B2 (ja)
KR (1) KR101565286B1 (ja)
CN (1) CN104769846A (ja)
DE (1) DE112012007097T5 (ja)
TW (1) TWI500270B (ja)
WO (1) WO2014068747A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5340903B2 (ja) 2009-12-10 2013-11-13 株式会社リブドゥコーポレーション 吸収性物品
US9411752B2 (en) 2012-11-01 2016-08-09 Mitsubishi Electric Corporation Conversion device, peripheral device and programmable logic controller
KR101586184B1 (ko) 2014-03-07 2016-01-18 미쓰비시덴키 가부시키가이샤 아날로그 유닛, 변환 특성 테이블 작성 장치 및 프로그래머블 컨트롤러 시스템
CN107391077A (zh) * 2017-07-11 2017-11-24 苏州顺芯半导体有限公司 一种可编程音频模数转换芯片及其实现方法
JP6939652B2 (ja) * 2018-03-08 2021-09-22 オムロン株式会社 デジタルフィルタ設定装置、デジタルフィルタ設定装置の制御方法、および制御プログラム
WO2019215907A1 (ja) * 2018-05-11 2019-11-14 オリンパス株式会社 演算処理装置
CN114356229B (zh) * 2021-12-22 2023-09-22 合肥康芯威存储技术有限公司 一种数据存储设备的参数优化方法及其优化系统

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58147223A (ja) 1982-02-26 1983-09-02 Japan Radio Co Ltd デイジタルフイルタ
JPS6046126A (ja) * 1983-08-23 1985-03-12 Sony Corp A/d変換回路
JPH01176113A (ja) 1987-12-29 1989-07-12 Sony Corp ディジタル信号処理装置
US20020010727A1 (en) * 1998-09-25 2002-01-24 Gregory A. Hughes Area efficient fir filter with programmable coefficients
JP2002304818A (ja) * 2001-04-09 2002-10-18 Ricoh Co Ltd 再生装置
JP2005164500A (ja) 2003-12-04 2005-06-23 Omron Corp プログラマブルコントローラ用検査装置およびプログラマブルコントローラ
JP2006020937A (ja) 2004-07-09 2006-01-26 Canon Inc 医用画像の位置合わせ方法及び装置
JP4464380B2 (ja) 2006-09-15 2010-05-19 Necエレクトロニクス株式会社 デジタルフィルタ
CN102053186B (zh) 2009-11-10 2014-08-20 北京普源精电科技有限公司 一种具有可变阶数数字滤波器的数字示波器
JP2011147009A (ja) 2010-01-15 2011-07-28 Audio Technica Corp デジタルフィルタおよびデジタルフィルタリング方法
US9411752B2 (en) 2012-11-01 2016-08-09 Mitsubishi Electric Corporation Conversion device, peripheral device and programmable logic controller

Also Published As

Publication number Publication date
CN104769846A (zh) 2015-07-08
DE112012007097T5 (de) 2015-07-23
WO2014068747A1 (ja) 2014-05-08
JP5680259B2 (ja) 2015-03-04
KR20150065952A (ko) 2015-06-15
US20150317260A1 (en) 2015-11-05
US9411752B2 (en) 2016-08-09
TW201419767A (zh) 2014-05-16
TWI500270B (zh) 2015-09-11
KR101565286B1 (ko) 2015-11-02

Similar Documents

Publication Publication Date Title
JP5680259B2 (ja) 変換装置、周辺装置およびプログラマブルコントローラ
US10324438B2 (en) Sequence-control programming apparatus, sequence-control programming method, and operating system
JP6582521B2 (ja) 制御装置、制御システム、制御装置の制御方法、制御プログラムおよび記録媒体
JP2005056196A (ja) プログラマブルコントローラ
JP2012099063A (ja) 監視制御装置
JP5785501B2 (ja) ラダープログラム作成装置
TWI422162B (zh) 數位/類比轉換裝置、周邊裝置及可程式邏輯控制器
JP5864032B1 (ja) プログラマブルロジックコントローラ
JP5726384B1 (ja) プログラマブルコントローラシステムおよび変換特性テーブル作成装置
WO2017077628A1 (ja) 機能ユニット及び制御装置
JPWO2012070128A1 (ja) システム設計装置
JP6939652B2 (ja) デジタルフィルタ設定装置、デジタルフィルタ設定装置の制御方法、および制御プログラム
JP5599378B2 (ja) 表示制御装置
JP2008219560A (ja) デシメーションフィルタ
JP4247194B2 (ja) データ変換処理装置
JP5599377B2 (ja) 表示制御装置
JP2007205736A (ja) 表示制御装置
JP2021162372A (ja) 波形測定器、及び波形測定器による再演算方法
JP6523869B2 (ja) Gui作成装置およびgui作成方法
JPH0221713A (ja) ディジタルフィルタリング装置
JP6146277B2 (ja) インバータ制御装置およびその周辺装置
JP2007249937A (ja) 収集データのモニタ方法及び装置
JPH0217455A (ja) ストレージ波形の出力表示方法
WO2013094067A1 (ja) システム構築支援装置
JPH04127202A (ja) ワンループコントローラのメモリカード使用法

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20141202

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20141209

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150106

R150 Certificate of patent or registration of utility model

Ref document number: 5680259

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250