// 日本光電 BSS-9800/BSM9500シリーズ用 configuration file
// ﾊｰﾄﾓﾆﾀとﾊﾟｿｺﾝとの接続には，専用のケーブルが必要です．

// BSM5100用ｹｰﾌﾞﾙはﾊﾟｿｺﾝ側がRS232C-9pinでﾊｰﾄﾓﾆﾀ側が高密度SCSI
// という作りです．
// BSS9800用ｹｰﾌﾞﾙは両端がRS232C-9pinのｵｽとﾒｽで，一見したところ
// ｽﾄﾚｰﾄ接続ｹｰﾌﾞﾙですが，内部の結線はｲﾝﾀｰﾘﾝｸ仕様という変なものです．
// 両方とも市販されていません．日本光電から入手してください．

// ｼﾘｱﾙﾎﾟｰﾄのﾊﾟｽ名（各パソコンに合わせて書き換えてください）
// デバイス名を示すコロン":"と行末を示すセミコロン";"を忘れずに

rs232c_port = com1: ;

// ここに書いた通信条件が工場出荷時のdefaultのようです．
// BSS9800のstop_bitは工場出荷時に１になっていますが，下記の設定のまま
// でも通信できるようです．
// なお，ﾊｰﾄﾓﾆﾀの通信ｵﾌﾟｼｮﾝのflow-controllの有無の設定はどちらでも
// かまいません．本品はどちらの設定でも動作します．

baud = 9600;     // 4800,9600,19200
byte_length = 8; // 7,8
stop_bit = 1;    // 1,2
parity = none;   // none,odd,even

// 次の行は日本光電PC-CAPTEN用の垂れ流し出力ﾎﾟｰﾄです．
// ﾊｰﾄﾓﾆﾀからの伝文を，そのまま垂れ流すだけで，CAPTEN側からの
// 問い合わせは無視して，こちらのﾀｲﾐﾝｸﾞで一方的に垂れ流します．
// metaChartがﾊｰﾄﾓﾆﾀからﾃﾞｰﾀを収集する間隔は下記の "念のため" の
// sampleing_time = … ; で調節してください．
// 通信条件はﾊｰﾄﾓﾆﾀ用ﾎﾟｰﾄと同じ設定（上記）を共用します．
// ｺﾒﾝﾄｱｳﾄすると何も垂れ流しません．
// ﾎﾟｰﾄのｵｰﾌﾟﾝに失敗してもｴﾗｰﾒｯｾｰｼﾞは何も出ません．

//rs232c_export = com2: ;

// 旧製品と現製品でデータ要求のオマジナイの文句が異なります．
// 機種による詳しい使い分けは日本光電にお尋ねください．

//request_string = "?D;ALL,1,0," ;    // 旧製品(BSM88xx,BSM71xxなど)用
request_string = "?D;EALL,1,2," ;   // 現製品(BSS98xx,BSM51xxなど)用

// 念のため．
//sampling_time = 5;   // 5,10,15 秒
//message_dump = no;   // yes,no

// LifeScopeからの通信文はｺﾝﾏ区切りのASCII文字列です．
// 以下のデータ項目位置の指定は，ｺﾝﾏ区切りの何番目か，と，
// そのｺﾝﾏ区切り内の何文字目かで指定します．
// いずれも０番から数え始めます．
// 項目位置はﾊﾟﾗﾒｰﾀ名(VPCやHRなど)を第0番とします．
// 項目内の文字位置は左端の文字位置を第0番とします．
// 例えば，"0.0"は最初の項目の最初の文字，
// "5,3"は，普通の言い方では6番目の項目の4番目の文字

parameters
{

// metaChartでのﾊﾟﾗﾒｰﾀ名
// {
//  mnemonic = lifeScopeから送られてくるﾊﾟﾗﾒｰﾀ名
//  value = 数値の位置(ｺﾝﾏ区切りの何番目か，ﾊﾟﾗﾒｰﾀ名を第0番とする)
//   ３値の場合は，syst dias mean の順
//  unit = 単位指示番号(後述)の位置，または単位文字列
//  induction = 心電図誘導指示番号(後述)の位置
//  arrythmia = 不整脈解析結果の文字の項目位置番号と文字位置番号
//  label = 血圧と体温のlabel文字列の項目位置番号
//  alarm = alarm文字の項目/文字位置番号とalarm文字列
//   先頭の※印３つは赤ｱﾗｰﾑ，２つは黄ｱﾗｰﾑ，１つまたは０は青ｱﾗｰﾑ
//   "alarm=…"は４つまで書けます．
// }

    HR
    {
        mnemonic = HR;
        value = 1;
        unit = /min;
        alarm = 4 "※※異常値";
    }
    PR
    {
        mnemonic = PR;
        value = 1;
        unit = /min;
        alarm = 3 "※※異常値";
    }
    VPC
    {
        mnemonic = VPC;
        value = 1;
        unit = /min;
        arrythmia = 3.1;
        alarm = 3 "※異常値";
    }
    ST
    {
        mnemonic = "ST";
        value = 1;
        induction = 2;
        unit = mV;
        alarm = 4 "※異常値";
    }
    p
    {
        mnemonic = "P";
        value = 1 2 3;
        unit = 4;
        label = 5;
        alarm = 6.0 "※※収縮期圧異常値";
        alarm = 6.1 "※※拡張期圧異常値";
        alarm = 6.2 "※※平均圧異常値";
    }
    T
    {
        mnemonic = "TEMP";
        value = 1;
        unit = 2;
        label = 3;
        alarm = 4 "※異常値";
    }
    Tblood
    {
        mnemonic = Tb;
        value = 1;
        unit = 2;
        alarm = 4 "※異常値";
    }
    RR
    {
        mnemonic = RR;
        value = 1;
        unit = /min;
        alarm = 3.0 "※※異常値";
        alarm = 3.1 "※※※apnea";
    }
    tcPCO2
    {
        mnemonic = tcPCO2;
        value = 1;
        unit = 2;
        alarm = 4 "※異常値";
    }
    tcPO2
    {
        mnemonic = tcPO2;
        value = 1;
        unit = %;
        alarm = 4 "※※異常値";
    }
    SpO2
    {
        mnemonic = SpO2;
        value = 1;
        unit = %;
        alarm = 3 "※※異常値";
    }
    SvO2
    {
        mnemonic = SvO2;
        value = 1;
        unit = %;
//alarm = 3 "※※※異常値";
    }
    MVex
    {
        mnemonic = FLOW;
        value = 1;
        unit = L/min;
        alarm = 6 "※※※異常値";
    }
    TVex
    {
        mnemonic = FLOW;
        value = 2;
        unit = ml/min;
    }
    PAWmax
    {
        mnemonic = Paw;
        value = 1;
        unit = cmH2O;
        alarm = 6.0 "※異常値";
    }
    PAWmin
    {
        mnemonic = Paw;
        value = 2;
        unit = cmH2O;
    }
    Ppeep
    {
        mnemonic = Paw;
        value = 4;
        unit = cmH2O;
        alarm = 6.1 "※※異常値";
    }
    CCO
    {
        mnemonic = CCO;
        value = 1;
        unit = L/min;
        alarm = 6.0 "※異常値";
    }
    CCI
    {
        mnemonic = CCO;
        value = 3;
        unit = L/min/m2;
    }
    imCO2
    {
        mnemonic = PiCO2;
        value = 1;
        unit = 2;
        alarm = 4 "※※異常値";
    }
    etCO2
    {
        mnemonic = PETCO2;
        value = 1;
        unit = 2;
        alarm = 4 "※異常値";
    }
    imCO2
    {
        mnemonic = FiCO2;
        value = 1;
        unit = 2;
        alarm = 4 "※※異常値";
    }
    etCO2
    {
        mnemonic = EtCO2;
        value = 1;
        unit = 2;
        alarm = 4 "※異常値";
    }
    imO2
    {
        mnemonic = O2;
        value = 1;
        unit = %;
        alarm = 3 "※異常値";
    }
    imO2
    {
        mnemonic = FiO2;
        value = 1;
        unit = %;
        alarm = 3 "※異常値";
    }
    etO2
    {
        mnemonic = EtO2;
        value = 1;
        unit = %;
        alarm = 3 "※異常値";
    }

    inN2O
    {
        mnemonic = FiN2O;
        value = 1;
        unit = %;
//alarm = 3 "※異常値";
    }
    etN2O
    {
        mnemonic = EtN2O;
        value = 1;
        unit = %;
//alarm = 3 "※異常値";
    }

    inISO
    {
        mnemonic = FiISO;
        value = 1;
        unit = %;
//alarm = 3 "※異常値";
    }
    etISO
    {
        mnemonic = EtISO;
        value = 1;
        unit = %;
//alarm = 3 "※異常値";
    }

    inSEV
    {
        mnemonic = FiSEV;
        value = 1;
        unit = %;
//alarm = 3 "※異常値";
    }
    etSEV
    {
        mnemonic = EtSEV;
        value = 1;
        unit = %;
//alarm = 3 "※異常値";
    }
// added for DES 2016-07-01
    inDES
    {
        mnemonic = FiDES;
        value = 1;
        unit = %;
    }
    etDES
    {
        mnemonic = EtDES;
        value = 1;
        unit = %;
    }
    BIS
    {
        mnemonic = BIS;
        value = 1;
        // ハートモニタのソフトのversion1.11以前の物に対しては
        // 次の１行のコメントをはずしてください．
        // mult = 1;
        unit = "";
//alarm = 4 "※異常値";
    }
    NIBP
    {
        mnemonic = NIBP;
        value = 8 9 10;
        unit = 11;
        alarm = 13.0 "※※収縮期圧異常値";
        alarm = 13.1 "※※拡張期圧異常値";
        alarm = 13.2 "※※平均圧異常値";
    }
    CO
    {
        mnemonic = CO;
        value = 10;
        unit = L/min;
    }
    PAWP
    {
        mnemonic = CO;
        value = 18;
        unit = 27;
    }
    // TOF追加 2019-10-15
    TOFrat
    {
        mnemonic = TOF;
        value = 1;
        unit = %;
        alarm = 5.0 "※異常値";
    }
    TOFcnt
    {
        mnemonic = TOF;
        value = 2;
        unit = "";
        alarm = 5.1 "※異常値";
    }
    PTC
    {
        mnemonic = TOF;
        value = 3;
        unit = "";
        alarm = 5.2 "※異常値";
    }

}

// 光電指定のﾗﾍﾞﾙ文字列からmetaChartでのparameter名への置き換え表

labels
{

// 光電のﾗﾍﾞﾙ名 = metaChartでのparameter名

    ART     = ART;
    ART-2   = ABP;
    RAD     = ABP;
    DORS    = ABP;
    AO      = Ao;
    FEM     = ABP;
    UA      = Uart;
    UV      = Uven;
    PAP     = PAP;
    CVP     = CVP;
    RAP     = RAP;
    RVP     = RVP;
    LAP     = LAP;
    LVP     = LVP;
    PRESS   = p1;
    PRESS-2 = p2;
    PRESS-3 = p3;
    PRESS-4 = p4;
    PRESS-5 = p5;
    PRESS-6 = p6;
    PRESS-7 = p7;
    PRESS-8 = p8;
    ICP     = icp1;
    ICP-2   = icp2;
    ICP-3   = icp3;
    ICP-4   = icp4;
    Tskin   = T;
    Trect   = Trect;
    Tcore   = T;
    Tnaso   = Tnaso;
    Teso    = Tesoph;
    Ttymp   = Ttymp;
    Tblad   = Tblad;
    Taxil   = T;
    TEMP    = T1;
    TEMP-2  = T2;
    TEMP-3  = T3;
    TEMP-4  = T4;
    TEMP-5  = T5;
    TEMP-6  = T6;
    TEMP-7  = T7;
    TEMP-8  = T8;
}

// 誘導記号置き換え表(STﾊﾟﾗﾒｰﾀ名の後ろにひっつく⇒STiiなど)

inductions
{

// 誘導記号文字 = 誘導名

    0 = i;
    1 = ii;
    2 = iii;
    3 = avr;
    4 = avl;
    5 = avf;
    6 = v;
    7 = mcl;
    8 = v1;
    9 = v2;
    A = v3;
    B = v4;
    C = v5;
    D = v6;
}

// 不整脈記号置き換え表

arrythmias
{

// 不整脈記号文字 = 不整脈ﾒｯｾｰｼﾞ
// 先頭の※印３つは赤ｱﾗｰﾑ，２つは黄ｱﾗｰﾑ，１つまたは０は青ｱﾗｰﾑ

    1 = "※※※vent. fibrilation";
    2 = "※※※asystole";
    3 = "※※※vent. tachycardia";
    4 = "※※ext. tachycardia";
    5 = "※※ext. bradycardia";
    6 = "※vpc run";
    7 = "※vpc couplet";
    8 = "※early vpc";
    9 = "※multiform vpcs";
    A = "※bigeminy";
    B = "※※freq. vpcs";
    C = "※prolonged rr interval";
    D = "※freq. svpcs";
    E = "※※tachycardia";
    F = "※※bradycardia";
    H = "※non func.";
    I = "※non capture";
    J = "※pacing failure";
    L = "※high st change";
    M = "※low st change";
    Q = "※vpc";
    T = "※rhythm change";
    U = "※irregular rr interval";
}

// 以下の4つはﾊｰﾄﾓﾆﾀから送られてくる(切り替え可能？)

units
{
    01 = mmHg;
    04 = kPa;
    19 = ﾟC;
    20 = ﾟF;
}

err_success = 0
              "ﾊｰﾄﾓﾆﾀとの通信が回復しました．";

err_silent = 180
             "ﾊｰﾄﾓﾆﾀと通信ができません"
             ""
             "ﾊｰﾄﾓﾆﾀの電源は入っていますか？"
             "通信線は外れていませんか？"
             "あるいはRS232/USB変換機が電気メスのノイズ"
             "などでフリーズしているかもしれません．"
             ""
             "ﾊｰﾄﾓﾆﾀの電源が入っていて，通信線も"
             "つながっているのに，通信できないときは，"
             "「ご案内とﾍﾙﾌﾟ」の「強制終了⇒再開準備」を"
             "実行してみてください．"
             ""
             "それでもだめな場合は，申し訳ありませんが，"
             "断線その他の，どこかの故障です．";

err_jummy = 30
            "通信エラーの頻度が規定の値を超えています．"
            ""
            "通信ケーブルが断線しかかっているか，または"
            "電磁気ノイズが多すぎて通信に支障をきたして"
            "います．"
            ""
            "ノイズ対策またはケーブルの交換をお願いします．";

err_comm = 0
           "lifescope.txt指定のrs232c_portを開く事が出来ません．"
           "使用説明書のRS232/USB変換機の項をお読みください．"
           "現在の構成で利用可能なRS232Cポートは"
           "ｺﾝﾄﾛｰﾙﾊﾟﾈﾙ⇒ｼｽﾃﾑ⇒ﾃﾞﾊﾞｲｽﾏﾈｰｼﾞｬ⇒ﾎﾟｰﾄ(COM/LPT)で"
           "お確かめください";

err_first = 30
            "日本光電社Lifescopeと通信ができません"
            ""
            "ﾊｰﾄﾓﾆﾀの電源は入っていますか？"
            "ﾊｰﾄﾓﾆﾀの通信線接続位置は合ってますか？"
            "通信速度の設定は合ってますか？"
            ""
            "PC側の通信線接続位置は合っていますか？"
            "RS232/USB変換機を接続するUSB端子を"
            "間違っていませんか？"
            ""
            "RS232/USB変換機はdriverをinstallする"
            "ときに接続していたUSB端子に接続して"
            "ご使用ください．"
            ""
            "念のためbsm.txtのrs232c_portの設定も"
            "再度お確かめください．"
            ""
            "それでもだめな場合は，申し訳ありませんが，"
            "断線その他の，どこかの故障です．";