CAN型向け 信号定義サンプル

このサンプルでは、CANデータを物理値に変換する信号定義を登録します。

このサンプルでは以下のようなCANデータを想定しています(このデータ定義は架空のもので、実在するものではありません)。

CAN ID

データ名

startbit

bitsize

scale

offset

330 (0x0000014A)

ブレーキオン・オフ

1

1

1

0

330 (0x0000014A)

アクセル

2

8

0.3

0

信号定義の概要

項目

設定内容

変換対象とする時系列データのタイプ

intdash.DataType.can

適用する変換

intdash.ConversionNumFixedPoint

信号定義の登録

信号定義のアクセスオブジェクトを生成します。

import intdash

client = intdash.Client(
    url = "https://example.intdash.jp",
    edge_token = "your_token",
)

sig = client.signals

以下のように、信号定義をそれぞれ登録します。

ブレーキオン・オフ

s = sig.create(
    label="BRAKE_ONOFF",
    data_type=intdash.DataType.can,
    data_id="0000014A",
    channel=1,
    conversion=intdash.ConversionNumFixedPoint(
        startbit=1,
        bitsize=1,
        endian="little",
        sign="unsigned",
        scale=1,
        offset=0,
    ),
    display=intdash.Display(
        unit="",
        min=0,
        max=1,
        format="%0.0f",
    ),
)

アクセル

s = sig.create(
    label="ACCEL",
    data_type=intdash.DataType.can,
    data_id="0000014A",
    channel=1,
    conversion=intdash.ConversionNumFixedPoint(
        startbit=2,
        bitsize=8,
        endian="little",
        sign="unsigned",
        scale=0.3,
        offset=0,
    ),
    display=intdash.Display(
        unit="",
        min=0,
        max=100,
        format="%0.0f",
    ),
)