交流電源に接続された加熱体と、前記加熱体を前記交流電源に接続する通電路に設けられ、制御信号の入力により導通する交流スイッチと、前記交流電源の出力電圧のゼロクロスポイントに対応してゼロクロスパルス信号を出力するゼロクロス検出回路と、前記交流スイッチが非導通状態にある時の、前記ゼロクロスパルス信号のパルス幅のデータを記憶する記憶部と、前記ゼロクロスパルス信号の立ち上がり時又は立ち下がり時を基準とし、前記記憶部に記録されたパルス幅の1/2の時間に対応したタイミングで前記交流スイッチに対して前記制御信号を出力することにより、前記加熱体の通電時間を制御する制御部と備える加熱装置。前記制御部は、前記加熱体の通電時間を波数制御し、前記制御部は、前記ゼロクロスパルス信号の前側の立ち下がり時又は前側の立ち上がり時から前記パルス幅の1/2の時間が経過したタイミングで、前記交流スイッチに前記制御信号を出力する請求項1に記載の加熱装置。前記制御部は、前記加熱体の通電時間を位相制御し、前記制御部は、前記ゼロクロスパルス信号の後側の立ち上がり時又は後側の立ち下がり時を基準とし、位相制御時間から前記パルス幅の1/2の時間を差し引いたタイミングで、前記交流スイッチに前記制御信号を出力する請求項1又は請求項2に記載の加熱装置。前記制御部は、前記加熱体を最初に通電する時は前記加熱体の通電時間を位相制御し、通電開始後は波数制御し、前記制御部は、前記位相制御において、前記交流スイッチに対する制御信号を、前記ゼロクロスパルス信号の後側の立ち上がり時又は立ち下がり時を基準とし、位相制御時間から前記パルス幅の1/2の時間を差し引いたタイミングで出力し、前記制御部は、前記波数制御において、前記交流スイッチに対する制御信号を、前記ゼロクロスパルス信号の前側の立ち下がり時又は前側の立ち上がり時から前記パルス幅の1/2の時間が経過したタイミングで出力する請求項1に記載の加熱装置。前記ゼロクロス検出回路の出力するゼロクロスパルス信号のパルス幅のデータを計時する計時部と、前記加熱体が非通電である場合に、前記記憶部に記憶した前記ゼロクロスパルス信号のパルス幅のデータを、前記計時部の計数値に基づいて更新する更新部とを備える請求項1ないし請求項4のいずれか一項に記載の加熱装置。被記録媒体上にトナー像を形成する画像形成部と、前記画像形成部により形成されたトナー像を前記被記録媒体上に定着させる請求項1ないし請求項5のいずれか一項に記載の加熱装置とを備えた画像形成装置。しかしながら、交流電源の出力電圧が変動してゼロクロスパルス信号のパルス幅が変動すると、推定したゼロクロスポイントがずれることから、ヒータの通電タイミングに誤差が生じる恐れがあった。本発明は、交流電源の電圧変動に起因する、ヒータの通電タイミングの誤差を抑えることを目的とする。本明細書によって開示される加熱装置は、交流電源に接続された加熱体と、前記加熱体を前記交流電源に接続する通電路に設けられ、制御信号の入力により導通する交流スイッチと、前記交流電源の出力電圧のゼロクロスポイントに対応してゼロクロスパルス信号を出力するゼロクロス検出回路と、前記交流スイッチが非導通状態にある時の、前記ゼロクロスパルス信号のパルス幅のデータを記憶する記憶部と、前記ゼロクロスパルス信号の立ち上がり時又は立ち下がり時を基準とし、前記記憶部に記録されたパルス幅の1/2の時間に対応したタイミングで前記交流スイッチに対して前記制御信号を出力することにより、前記加熱体の通電時間を制御する制御部と備える。尚、パルス幅のデータには、パルス幅の値そのものに加えて、パルス幅の1/2の値など、パルス幅を加工したデータが含まれる。この構成では、非導通状態にある時のゼロクロスパルス信号のパルス幅を用いて、制御信号の出力タイミングを決めている。そのため、交流スイッチを交流電源の電圧変動に関係なく、所定タイミングにて導通できる。よって加熱体の通電時間を高精度に制御できる。また、上記加熱装置において、前記制御部は、前記加熱体の通電時間を波数制御し、前記制御部は、前記ゼロクロスパルス信号の前側の立ち下がり時又は前側の立ち上がり時から前記パルス幅の1/2の時間が経過したタイミングで、前記交流スイッチに前記制御信号を出力するようにしてもよい。また、上記加熱装置において、前記制御部は、前記加熱体の通電時間を位相制御し、前記制御部は、前記ゼロクロスパルス信号の後側の立ち上がり時又は後側の立ち下がり時を基準とし、位相制御時間から前記パルス幅の1/2の時間を差し引いたタイミングで、前記交流スイッチに前記制御信号を出力するようにしてもよい。また、上記加熱装置において、前記制御部は、前記加熱体を最初に通電する時は前記加熱体の通電時間を位相制御し、通電開始後は波数制御し、前記制御部は、前記位相制御において、前記交流スイッチに対する制御信号を、前記ゼロクロスパルス信号の後側の立ち上がり時又は立ち下がり時を基準とし、位相制御時間から前記パルス幅の1/2の時間を差し引いたタイミングで出力し、前記制御部は、前記波数制御において、前記交流スイッチに対する制御信号を、前記ゼロクロスパルス信号の前側の立ち下がり時又は前側の立ち上がり時から前記パルス幅の1/2の時間が経過したタイミングで出力するようにしてもよい。また、上記加熱装置において、前記ゼロクロス検出回路の出力するゼロクロスパルス信号のパルス幅のデータを計時する計時部と、前記加熱体が非通電である場合に、前記記憶部に記憶した前記ゼロクロスパルス信号のパルス幅のデータを、前記計時部の計数値に基づいて更新する更新部とを備えるようにしてもよい。本明細書によって開示される画像形成装置は、被記録媒体上にトナー像を形成する画像形成部と、前記画像形成部により形成されたトナー像を前記被記録媒体上に定着させる本発明の加熱装置とを備える。本発明によれば、交流電源の電圧変動に起因する、ヒータの通電タイミングの誤差を抑えることが可能となる。<実施形態1>本発明の実施形態1を図1ないし図9によって説明する。1-1プリンタの構成図1は、レーザプリンタ1画像形成装置の一例の要部側断面図である。レーザプリンタ1以下プリンタというは、本体フレーム2、給紙部4、画像形成部5、定着部18などを備えている。給紙部4は、印刷用紙3被記録媒体の一例が積載される給紙トレイ6、押圧板7、および給紙ローラ8を備えている。押圧板7は、その後端部を中心に回転可能とされており、押圧板7上の印刷用紙3が給紙ローラ8に向かって押圧されている。給紙ローラ8が回転することにより印刷用紙3が1枚ずつ搬送路に送り出される。給紙された印刷用紙3は、レジストレーションローラ12によってレジストされた後に転写位置Xに送られる。転写位置Xは、印刷用紙3に感光体ドラム27上のトナー像を転写する位置であって、感光体ドラム27と転写ローラ30との接触位置とされる。画像形成部5は印刷用紙3にトナー像を形成するものであり、スキャナ部16、プロセスカートリッジ17などを備えている。スキャナ部16は、図示しないレーザ発光部、ポリゴンミラー19などを備えている。レーザ発光部から発光されたレーザ光図中の一点鎖線は、ポリゴンミラー19によって偏向されつつ感光体ドラム27の表面上に照射される。プロセスカートリッジ17は、現像ローラ31、感光体ドラム27、及びスコロトロン型の帯電器29を備えている。帯電器29は、感光体ドラム27の表面を一様に正極性に帯電させる。正極性に帯電した感光体ドラム27の表面はスキャナ部16から発光されたレーザ光により露光され、静電潜像が形成される。次いで、現像ローラ31の表面上に担持されるトナーが感光体ドラム27上に形成された静電潜像に供給され現像される。定着部18は、加熱ローラ41、押圧ローラ42、加熱装置43図3参照などを備えている。定着部18は、印刷用紙3が加熱ローラ41と押圧ローラ42との間を通過する間にトナー像を印刷用紙3に熱定着させる。トナーが熱定着された印刷用紙3は排紙パス44を介して排紙トレイ46上に排紙される。1-2プリンタの電気的構成図2は、プリンタ1の電気的構成を示すブロック図である。プリンタ1は、CPU本発明の制御部、更新部の一例50、ROM51、RAM本発明の記憶部の一例52、EEPROM53、給紙部4、画像形成部5、、定着部18、表示部54、操作部55、情報端末装置との間でデータを通信する通信部56などを備えている。CPU50はROM51に記憶されている各種のプログラムを実行することによりプリンタ1の各部を制御する。ROM51はCPU50により実行される各種のプログラムやCPU50が各種の処理で参照する表などを記憶している。RAM52はCPU50が各種の処理を実行するための主記憶装置として用いられる。EEPROM53は通電が停止されても情報を記憶可能な不揮発性メモリであり、各種の設定情報などを記憶する。表示部54は各種ランプや液晶パネルなどで構成されている。操作部55は入力パネルなどで構成されており、利用者は表示部54を参照しながら操作部55を操作して印刷の指示などを行うことができる。この他、プリンタ1には外部機器と接続するための図示しないネットワークインタフェースなども設けられており、利用者は外部機器からネットワークインタフェースを介して印刷を指示することもできる。1-3加熱装置の構成図3は、加熱装置43の構成を示すブロック図である。加熱装置43は、ヒータ本発明の加熱体の一例60、温度センサ61、トライアック本発明の交流スイッチの一例65、ゼロクロス検出回路67、CPU50、カウンタ73、75、タイマ77などを備えている。カウンタ73は、後述するゼロクロスパルス信号Srのパルス幅を計測するものであり、カウンタ75は、実施形態2にて述べるゼロクロス周期Tpを計測するものである。ヒータ60はハロゲンランプであって、加熱ローラ41の中心軸方向に延びる姿勢で加熱ローラ41の内部に収容されており、通電に応じて発熱する。温度センサ61は、図示しない抵抗器やサーミスタなどで構成されている。サーミスタは温度変化に対して電気抵抗の変化の大きい抵抗体であり、ヒータ60の近傍に配置されている。サーミスタは一端が抵抗器を介して接地されており、他端が5Vの電源ラインに接続されている。温度センサ61はサーミスタによりヒータ温に応じた温度検出信号SaをCPU50に出力する。トライアック65は、交流電源101とヒータ60とを接続する電力供給線本発明の通電路の一例上に配置されている。トライアック65は、CPU50より出力されるヒータ制御信号Sbに応答してターンオンし、逆電圧がかかる又は電流がゼロになるとターンオフする。このトライアック65はヒータ60への通電を制御するものである。ゼロクロス検出回路67は、図4に示すように、抵抗R1、交流電源101の出力電圧Vを全波整流する全波整流ブリッジ回路D1、全波整流ブリッジD1に接続された発光ダイオードD2、発光ダイオードD2と共にフォトカプラPC1を構成するフォトトランジスタTR、抵抗R2、インバータIC1から構成されている。フォトトランジスタTRはエミッタをグランドに接続し、コレクタを抵抗R2を介して直流電源ラインVccに接続されている。そして、インバータIC1はフォトカプラPC1のコレクタに接続されて、コレクタの電圧レベルHigh/Lowを反転させて出力する。そして、交流電源101の出力電圧Vが小さくなると、発光ダイオードD2の発光量も小さくなり、フォトトランジスタTRに流れる電流Icも小さくなり、IC1の入力電圧Vinが大きくなる。ここで、交流電源101の出力電圧Vが閾値Vtを下回ると、IC1の出力がローレベルになる。そして、交流電源101の出力電圧Vが大きくなると、発光ダイオードD2の発光量が大きくなり、フォトトランジスタTRに流れる電流Icも大きくなり、IC1の入力電圧Vinが小さくなる。ここで、交流電源101の出力電圧Vが閾値Vtを超えると、IC1の出力がハイレベルになる。従って、ゼロクロス検出回路67は、図5に示すように、交流電源101の出力電圧Vが、正負のVtにより規定されるゼロクロス検出範囲Uにある間、パルスが持続するゼロクロスパルス信号Srを出力する。尚、ゼロクロス検出回路67の出力ラインLoは、CPU50の入力ポートPに接続されていることから、CPU50にて入力ポートPの電圧レベルを監視することで、ゼロクロスパルス信号Srの立ち上がり、立ち下がりを検出できるようになっている。また、ゼロクロスパルス信号がアクティブロータイプになっているのは、インバータIC1により出力を反転しているからである。1-4温度制御の概要加熱装置43は、温度センサ61から出力される温度検出信号Saに基づいてヒータ60を温度制御するものであり、この実施形態では、ヒータ60に対する通電を波数単位でオンオフする波数制御を行う。ここで、ヒータ60の温度制御の精度を高めるには、ヒータ60の通電開始タイミングをゼロクロスポイントに一致させることが好ましく、それを果たすには、トライアック65をゼロクロスポイントに一致したタイミングでオンさせる必要がある。本実施形態では、トライアック65が非導通状態にある時の、ゼロクロスパルス信号Srのパルス幅Tw0のデータをRAM52に記憶しておき、ゼロクロスパルス信号Srの立ち下がり時図6の時刻t1、t3などからパルス幅Tw0の1/2の時間が経過した時点で、CPU50がヒータ制御信号Sbを出力する。このようにすることで、電圧変動に関係なく、トライアック65をゼロクロスポイントに一致したタイミングでオンさせることが可能となる。ここで仮に、ヒータ制御信号Sbの出力タイミングを計るのに、トライアック65が導通状態にある時の、ゼロクロスパルス信号Srのパルス幅Tw2やTw4のデータを用いると、図7に示すD部のように、トライアック65がゼロクロスポイントから遅れてオンすることになるので、ヒータ60への通電量が少なくなる。そのため、ヒータ60の温度制御の精度が悪くなるが、本実施形態では、このような遅れがないので、ヒータ60の温度制御の精度を高めることが可能となる。尚、ヒータ制御信号Sbをオンするタイミングを計るのに、トライアック65が導通状態にある時のパルス幅Tw2やTw4を用いると、トライアック65がゼロクロスポイントから遅れてオンするのは、交流電源101は出力インピーダンスを持っており、出力電流が増えると出力電圧Vが小さくなるので、トライアック65をオンしてヒータ60に通電している時は、非通電時に比べて、出力電圧Vが小さくなる。すると、図5に示すように、通電時のパルス幅Twが、非通電時に比べて広くなって、ヒータ制御信号Sbのオンタイミングが、後側にずれるからである。以下、上記したパルス幅Tw0を計時してそのデータをRAM52に記憶させるパルス幅計測シーケンス図8と、上記温度制御を実行するための温度制御シーケンス図9について説明を行う。尚、これら両シーケンスはいずれもCPU50により実行される。<パルス幅計測シーケンス>パルス幅計測シーケンスは電源投入によりスタートし、CPU50はスタート後、ゼロクロス検出回路67の出力、すなわち入力ポートPの電圧レベルを監視する状態となる。そして、S1ではゼロクロスパルス信号Srが立ち下ったか判定する処理が行われる。交流電源101の出力電圧Vの絶対値が閾値Vtより大きい間例えば、図5のA区間は、ゼロクロスパルス信号Srは出力されないので、入力ポートPの電圧レベルはハイレベルが続く状態となり、S1ではNO判定が続くことになる。そして、交流電源101の出力電圧Vの絶対値が閾値Vtを下回る状態になると、ゼロクロス検出回路67からゼロクロスパルス信号Srが出力される。これにより、CPU50にて、ゼロクロスパルス信号Srの立ち下がりが検出されるので、S1でYES判定され、S2に処理が移る。S2では、パルス幅Twを計測するカウンタ73のカウント値がクリアされ、カウンタ73はカウントを開始する。次に、処理はS3に移行する。S3では、CPU50により、ゼロクロスパルス信号Srが立ち上がったか判定される。交流電源101の出力電圧Vがゼロクロス検出範囲U内にある間は、ゼロクロスパルス信号Srは持続することから、S3ではNO判定される。そして、交流電源101の出力電圧Vの絶対値が閾値Vtより大きくなると、ゼロクロス検出回路67はゼロクロスパルス信号Srの出力を停止することから、ゼロクロスパルス信号Srの立ち上がりが検出される。そのため、S3でYES判定され、S4に処理が移る。S4では、カウンタ73、75のカウント中、ヒータ制御信号Sbをオンしていたか、どうか判定される。ヒータ制御信号Sbをオフしていた場合、すなわちトライアック65をオフしていた場合、S4ではNO判定され、次に処理はS5に移る。一方、ヒータ制御信号Sbをオンしていた場合、すなわちトライアック65をオンしていた場合はS5をスキップして、処理はS6に移るS5では、各カウンタ73、75のカウント値をRAM52に書き込む処理がCPU50により実行される。すなわち、カウンタ73のカウント値がRAM52のデータ格納部D1に書き込まれる。また、カウンタ75のカウント値がRAM52のデータ格納部D2に書き込まれる。そして、S5にてカウント値を書き込むと、次にS6に処理は移る。S6ではカウンタ75のカウント値をクリアし、カウンタ75はカウントを開始する。その後、処理はS1に戻り、S1~S6の処理が実行される。このように本実施形態では、ゼロクロスパルス信号Srの立ち下がりから立ち上がりまでの時間、すなわちゼロクロスパルス信号Srのパルス幅Twをカウンタ73でカウントする。また、ゼロクロスパルス信号Srの立ち上がりから次の立ち上がりまでの時間、すなわち交流電源101の出力電圧Vのゼロクロス周期Tpをカウンタ75でカウントする。そして、これら両カウンタ73、75のカウント値は、S4でNO判定される場合、すなわちヒータ制御信号Sbの出力がなくトライアック65がオフしている場合に限り、RAM52へ書き込まれる。そのため、RAM52のデータ格納部D1には、ゼロクロスパルス信号Srの非通電時のパルス幅Tw0のデータが書き込まれ、RAM52のデータ格納部D2には、同じく非通電時のゼロクロス周期Tp0のデータが書き込まれることになる。そして、これら両データ格納部D1、D2には、S1~S6の処理を1回繰り返す度に、S5にて両カウンタ73、75のカウント値が上書きされることから、RAM52のデータ格納部D1に記憶される非通電時のパルス幅Tw0のデータは、最新のデータに更新され、またデータ格納部D2に記憶される非通電時のゼロクロス周期Tp0のデータは、最新のデータに更新される。尚、CPU50により実行される図8のパルス幅計測シーケンスにより、本発明の更新部の機能が実現されている。<温度制御シーケンス>次に、温度制御シーケンスを、デューティー比が50で、半波ごとにオンオフを順に繰り返す場合を例にとって説明する。温度制御シーケンスは、通信部56が情報端末装置から印刷指示を受けて印刷データを受信するとスタートする。スタート後、まず、CPU50は、ゼロクロス検出回路67の出力、すなわち入力ポートPの電圧レベルを監視する状態となる。そして、S10ではゼロクロスパルス信号Srが立ち下ったか判定する処理が行われる。交流電源101の出力電圧Vの絶対値が閾値Vtより大きい間例えば、図5のA区間は、ゼロクロスパルス信号Srは出力されないので、入力ポートPの電圧レベルはハイレベルが続く状態となり、S10ではNO判定が続くことになる。そして、交流電源101の出力電圧Vの絶対値が閾値Vtを下回る状態になると、ゼロクロス検出回路67からゼロクロスパルス信号Srが出力されて、ゼロクロスパルス信号Srの立ち下がりが検出され、S20に処理が移る。ここでは、図6に示す時刻t0にて印刷指令を受けた後、1回目のゼロクロスパルス信号Srの立ち下がり時である時刻t1にて、処理がS20に移る。S20では、温度検出信号Saに基づいてヒータ通電時間のデューティー比がCPU50にて決定される。具体的には、まず、温度検出信号SaをAD変換してヒータ60の温度データを求める。次に、求めた温度データから目標温度に対する温度差ΔTを算出する。次に、求めた温度差ΔTからヒータ通電時間のデューティー比を算出する。そして、算出したデューティー比からオンオフする波数がCPU50にて決定される。その後、処理はS30に移行する。S30では、S10にてゼロクロスパルス信号Srの立ち下がりを検出した時点から、非通電時のパルス幅Tw0の1/2時間、ウエイトする処理が実行される。具体的には、CPU50は、RAM52から非通電時のパルス幅Tw0のデータを読み出して、ヒータ制御用タイマ77に、ゼロクロスパルス信号Srの立ち下がり時点から非通電時のパルス幅Tw0の1/2時間カウントさせる。そして、ヒータ制御用タイマ77にてカウントし終わると、次にS40に移行する。S40では、S20にて決定したオンオフする波数に基づいてヒータ制御信号Sbをオン又はOFFする処理が実行される。これにより、たとえば、印刷指令後、1回目のゼロクロスパルス信号Srの立ち下がり時刻t1から非通電時のパルス幅Tw0の1/2時間が経過した時に、CPU50はヒータ制御信号Sbをオンする。これにて、トライアック65が非導通状態から導通状態に切り換り、ヒータ60は通電開始される。次に、S50では、印刷処理が終了したか判定される。S50でNO判定されると処理はS10に戻る。そしてS10では、ゼロクロスパルス信号Srが立ち下ったか判定する処理が行われる。従って、ここでは、印刷指令後、2回目のゼロクロスパルス信号Srの立ち下がりを検出した時にYES判定される。その後、S20、S30の処理が順に行われ、S30にて、2回目のゼロクロスパルス信号Srの立ち下がり時、すなわち、図6の時刻t2から非通電時のパルス幅Tw0の1/2時間、ウエイトする処理が実行される。次に、S40では、S20にて決定したオンオフする波数に基づいてヒータ制御信号Sbをオン又はOFFする処理が実行される。ここでは、デューティー比が50で半波ごとにオンオフを順に繰り返す波数制御を行うので、2回目のゼロクロスパルス信号Srの立ち下がり時、すなわち、図6の時刻t2から非通電時のパルス幅Tw0の1/2時間が経過した時に、CPU50はヒータ制御信号Sbをオフする。これにて、トライアック65はゲートの電圧がロウレベルになることから、交流電源101の出力電圧Vがゼロクロスした時に、導通状態から非導通状態に切り換り、ヒータ60は非通電状態に移行する。その後、処理はS50に移行し、印刷処理が終了していなければ、処理はS10に再び戻る。このような処理が繰り返されることで、ヒータ60に対する通電時間がコントロールされ、ヒータ60は目標温度に制御される。そして、印刷処理が終了すると、S50にてYES判定され、処理はS60に移行する。S60では、CPU50にてヒータ制御信号Sbをオフする処理が実行される。これにて、トライアック65はゲートの電圧がロウレベルになることから、交流電源101の出力電圧Vがゼロクロスした時に導通状態から非導通状態に切り換り、ヒータ60は非通電状態に移行する。かくして、一連の温度制御シーケンスは完了する。以上説明したように、実施形態1では、トライアック65が非導通状態にある時のゼロクロスパルス信号Srのパルス幅Tw0のデータをRAM52に記憶しておき、ゼロクロスパルス信号Srの立ち下がり時点からパルス幅Tw0の1/2の時間が経過した時点で、CPU50がヒータ制御信号Sbをオンする。そのため、ヒータ60の通電開始タイミングをゼロクロスポイントに一致させることが可能となり、ヒータ60の通電時間を正確に制御できる。そのため、ヒータ60の温度制御の精度が高まる。また、本実施形態1では、ゼロクロスパルス信号Srのパルス幅Tw0をカウンタ73で常に計測し、非通電時であれば、RAM52に更新記憶する。仮にパルス幅Tw0を更新しないとすると、通電量の増減以外の要因で電源の出力電圧Vが変動した場合に、やはりパルス幅が変動するから、ゼロクロスタイミングに対してヒータ制御信号Sbの出力タイミングがずれる可能性があるが、本実施形態ではパルス幅Tw0を更新するので、パルス幅に変動があっても、更新しない場合に比べて、その影響は小さい。従って、パルス幅Tw0を更新しない場合に比べて、ゼロクロスポイントにより近いタイミングでヒータ制御信号Sbを出力できるので、ヒータ60の通電時間を正確に制御できる。<実施形態2>次に、本発明の実施形態2を図10ないし図13によって説明する。実施形態1では、ヒータ60の通電時間の制御方法として波数制御を説明した。実施形態2では、ヒータ60の通電時間を位相制御する。位相制御とはヒータ60の通電時間を導通位相角別名、点弧角αにて制御するものである。導通位相角αとはトライアック65の導通開始する位相である。また、位相制御時間Tfとは導通位相角αを時間に換算したものであり、ゼロクロスポイントからトライアック65を導通開始させるまでの時間図10参照である。また、ゼロクロス周期Tpとは、ゼロクロスポイントから次のゼロクロスポイントまでの時間である図10参照。尚、位相制御時間Tfは、次の1式にて表すことができる。Tf=Tp×α/π1Tf位相制御時間Tpゼロクロス周期α導通位相角位相制御を行う場合、ヒータ60の温度制御の精度を高めるには、トライアック65を、導通位相角αにて正確にオンさせて、ヒータを通電開始させることが好ましい。本実施形態では、トライアック65が非導通状態にある時のゼロクロスパルス信号Srのパルス幅Tw0のデータをRAM52に記憶しておき、ゼロクロスパルス信号Srの立ち上がり時図11のt12、t22、t32から設定時間、具体的には位相制御時間Tfからパルス幅Tw0の1/2の時間を差し引いた時間が経過したタイミングで、CPU50がヒータ制御信号Sbを出力する。このようにすることで、交流電源101の電圧変動に関係なく、トライアック65を、導通位相角αにて正確にオンさせて、ヒータ60を通電開始させることが可能となる。ここで仮に、ヒータ制御信号Sbをオンするタイミングを計るのに、トライアック65が導通状態にある時の、ゼロクロスパルス信号Srのパルス幅Tw2やパルス幅Tw3のデータを用いると、予定する導通位相角αより早いタイミングでヒータ60が通電されてしまうことから、図12に示すE部のように、ヒータ60への通電量が多くなる。そのため、ヒータ60の温度制御の精度が悪くなるが、本実施形態では、このようなタイミングのズレを抑えることが出来るので、ヒータ60の温度制御の精度を高めることが可能となる。尚、トライアック65が導通状態にある時のパルス幅Tw2やパルス幅Tw3を用いると、導通位相角αより早いタイミングでヒータ60が通電されてしまうのは、通電時は、交流電源101の出力電圧Vの振幅が小さくなるので、ゼロクロスパルス信号Srのパルス幅Twが非通電時に比べて広くなる。そのため、ヒータ制御信号Sbの立ち上がりが前にずれてしまうからである。以下、上述した温度制御を実行するための温度制御シーケンス図13について説明を行う。尚、実施形態2の場合も、温度制御シーケンスと並行して図8に示すパルス幅計測シーケンスを実行する点は、実施形態1と同じである。<温度制御シーケンス>温度制御シーケンスは、通信部56が情報端末装置から印刷指示を受けて印刷データを受信するとスタートする。スタート後、まず、CPU50は、ゼロクロス検出回路67の出力、すなわち入力ポートPの電圧レベルを監視する状態となる。そして、S100ではゼロクロスパルス信号Srが立ち上がったか判定する処理が行われる。このS100の処理は、ゼロクロスパルス信号Srの立ち上がりが検出されるまで繰り返し行われる。そして、ゼロクロスパルス信号Srの立ち上がりが検出されると、次にS110に移行する。従って、ここでは、図11に示す時刻t0にて印刷指令を受けた後、1回目のゼロクロスパルス信号Srの立ち上がり時である時刻t12にて処理がS110に移ることになる。S110では、温度検出信号Saに基づいてヒータ通電時間のデューティー比がCPU50にて決定される。具体的には、まず、温度検出信号SaをAD変換してヒータ60の温度データを求める。次に、求めた温度データから目標温度に対する温度差ΔTを算出する。次に、求めた温度差ΔTからヒータ通電時間のデューティー比を算出する。そして、算出したデューティー比から導通位相角αが決定され、更に導通位相角αとゼロクロス周期Tpから位相制御時間Tfが決定される。次に、S120では、S100にてゼロクロスパルス信号Srの立ち下がりを検出した時点から設定時間、具体的には位相制御時間Tfからパルス幅Tw0の1/2の時間を差し引いた時間、ウエイトする処理が実行される。具体的には、CPUは、ヒータ制御用タイマ77に、S100にてゼロクロスパルス信号Srの立ち上がりを検出した時点から設定時間Tf-Tw0/2カウントさせる。そして、ヒータ制御用タイマ77がカウントし終わると、次にS130に移行し、CPU50がヒータ制御信号Sbをオンする。これにより、印刷指令後、1回目のゼロクロスパルス信号Srの立ち上がり時点である時刻T12から設定時間Tf-Tw0/2が経過したタイミングtaで、トライアック65が非導通状態から導通状態に切り換り、ヒータ60は通電開始される。その後、処理はS140に移行する。S140では、CPU50により、ゼロクロスパルス信号Srは立ち下がったか判定される。このS140の処理は、ゼロクロスパルス信号Srの立ち下がりが検出されるまで繰り返し行われる。そして、ゼロクロスパルス信号Srの立ち下がりが検出されると、次に、S150に移行する。従って、ここでは、印刷指令後、2回目のゼロクロスパルス信号Srの立ち下がり時点、すなわち図11の時刻t21にてS140からS150に処理が移ることになる。続くS150では、S140にてゼロクロスパルス信号Srの立ち下がりを検出した時点から、非通電時のパルス幅Tw0の1/2時間、ウエイトする処理が実行される。具体的には、CPUは、ゼロクロスパルス信号Srの立ち下がり時刻t21から、ヒータ制御用タイマ77に、非通電時のパルス幅Tw0の1/2時間をカウントさせる。そして、ヒータ制御用タイマ77がカウントし終わると、次にS160に移行し、CPU50はヒータ制御信号Sbをオフする。これにより、図11の時刻tbで、トライアック65はゲートの電圧がロウレベルになることから、交流電源101の出力電圧がゼロクロスした時に、導通状態から非導通状態に切り換り、ヒータ60は非通電状態に移行する。その後、処理はS170に移行し、印刷処理が終了していなければ、処理はS100に戻る。このような処理が繰り返されることで、ヒータ60に対する通電時間がコントロールされ、ヒータ60は目標温度に制御される。そして、印刷処理が終了すると、S170にてYES判定され、一連の温度制御シーケンスは完了する。以上説明したように、実施形態2では、トライアック65が非導通状態にある時のゼロクロスパルス信号Srのパルス幅Tw0のデータをRAM52に記憶しておき、ゼロクロスパルス信号Srの立ち上がり時から設定時間、具体的には位相制御時間Tfからパルス幅Tw0の1/2の時間が経過した時点で、CPU50がヒータ制御信号Sbをオンする。そのため、トライアック65を、導通位相角αにて正確にオンさせることが可能になるので、ヒータ60の温度制御の精度が高まる。<実施形態3>次に、本発明の実施形態3を説明する。実施形態3は、実施形態2の位相制御と実施形態1の波数制御を組み合わせたものである。具体的には、加熱体であるヒータ60を最初に通電する時、例えば印刷指令を受けた直後、まず、実施形態2の位相制御を実行する。そして、実施形態2の位相制御を設定回数例えば、1回実行し、それ以降は実施形態1の波数制御を行ってヒータ60の通電時間を制御する。そして、CPU50は、位相制御では、ゼロクロスパルス信号Srの立ち上がり時から設定時間、具体的には位相制御時間Tfからパルス幅Tw0の1/2の時間が経過した時点でヒータ制御信号Sbをオンする。そのようにすれば、実施形態2と同様に、トライアック65を導通位相角αにて正確にオンさせることが可能になる。また、CPU50は、波数制御では、ゼロクロスパルス信号Srの立ち下がり時からパルス幅Tw0の1/2の時間が経過した時点で、ヒータ制御信号Sbをオンする。そのようにすれば、実施形態1と同様に、ヒータ60の通電開始タイミングをゼロクロスポイントに一致させることが可能となる。一般的に、非通電状態のヒータ60は、温度が低く抵抗値が小さいことから、最初に通電する時、大電流が流れ易い。この点、この構成では、最初に通電する時、位相制御を行うので、導通位相角αを大きくして、ヒータ60の導通時間を短くすることが可能である。そのため、ヒータ60に大電流が長時間、流れることを抑制できる。<他の実施形態>本発明は上記記述及び図面によって説明した実施形態に限定されるものではなく、例えば次のような実施形態も本発明の技術的範囲に含まれる。1実施形態1、2では、ゼロクロスパルス信号Srの一例として、アクティブロータイプの信号を例示した。ゼロクロスパルス信号Srは、交流電源101の出力電圧Vのゼロクロスに対応したパルス状の信号であればよく、アクティブハイタイプイプの信号であってもよい。尚、ゼロクロスパルス信号Srをアクティブハイの信号とする場合、波数制御では、ゼロクロスパルス信号Srの立ち上がり時点からパルス幅Tw0の1/2の時間が経過した時点で、ヒータ制御信号Sbをオンする。そのようにすれば、実施形態1と同様に、ヒータ60の通電開始タイミングをゼロクロスポイントに一致させることが可能となり、ヒータ60の通電時間を正確に制御できる。また、ゼロクロスパルス信号Srをアクティブハイの信号とする場合、位相制御では、ゼロクロスパルス信号Srの立ち下がり時から設定時間、具体的には位相制御時間Tfからパルス幅Tw0の1/2の時間が経過した時点でヒータ制御信号Sbをオンする。そのようにすれば、実施形態2と同様に、トライアック65を導通位相角αにて正確にオンさせることが可能になるので、ヒータ60の温度制御の精度が高まる。2実施形態3では、位相制御と波数制御を組み合わせた制御例として、位相制御の実行後に波数制御を行うパターンを示した。位相制御と位相制御と波数制御を組み合わせは、実施形態3の組み合わせ以外にも、例えば、波数制御の実行後に位相制御を行う組み合わせでもよい。3実施形態1~3では、RAM52に対してパルス幅Tw0を記憶させる例を示した。RAM52に記憶させるデータは、実施形態で開示したパルス幅Tw0そのものの値だけでなく、例えば、パルス幅Tw0の1/2を記憶させてもよい。