全国服务热线 15221406036

西门子6ES7288-1ST40-0AA1详细参数

发布:2023-03-17 17:33,更新:2024-05-08 07:10

在如何编写把十进制数转化成ASCII的程序之前,应先知道十进制数与之对应ASIIC码的数学关系及将它们存放存储器的数制表示形式:

   1、每一位十进制数其值为0~9,其二进制值为:0000~1001,放在字节存储器将占用4个二进制数的位。一个字节内含8个二进制数的位,故一个字节可表示2位十进制数。这种用4位二进制数表示一位十进制数的数制叫BCD码。

   2、每一位十进制数“X”转换为ASIIC码的原则为:30+X   如 X=4,其对应ASIIC码=34,将其放入一字节存储器里用二进制数表示:0011_0100,用16进制数表示:16#34

   3、如被转换的十进制数大为4位数,用BCD码表示可占一个字存储器空间,设为字存储器为MW10,MW10含2个字节,高字节为MB10,低字节为MB11。MB10的高4位为十进制数的千位数值,MB10的低4位为十进制数的百位数值。MB11的高4位为十进制数的十位数值,MB11的低4位为十进制数的个位数值。如将此4位十进制数转换为ASIIC码,需占用一个双字存储器空间,如VD10,它含有4个字节,每个字节代表一位ASIIC码,其每个字节的高4位数值皆=0011(3),低4位数为十进制数对应的数值,如十进制数1234,放入字存储器MW10里。其内容=0001_0010_0011_0100,用16进制数表示为:16#1234,转换为ASIIC码值放入VD10里,其内容=0011_0001_0011_0010_0011_0011_0011_0100,用16进制数表示:16# 31 32 33 34。

    了解上述3点,就可以很容易编出把十进制数转化成ASCII的程序:

    设MW10为4位十进制数存储区(存数形式为BCD码),VD10为转换为ASIIC码D的存数区。编程可以这样处理:

    1、将16#30303030送入VD10.

    2、将MB10右移4位送入MB8,再将MB8或入VB10。

    3、将MB10与16#0F相与,送入MB8,再将MB8或入VB11。

    4、将MB11右移4位送入MB8,再将MB8或入VB12。

     5、将MB11与16#0F相与,送入MB8,再将MB8或入VB13。

按这样步骤编程,其VD10的内容即为将MW10内的4位十进制数转换为ASIIC码值。

西门子6ES7288-1ST40-0AA1详细参数

  plc的输入口的内部电路多为光敏器件,其发光二极管接输入口,再串接一限流电阻接地。其限流电阻阻值是按24V电源下设计的,即输入24V电压,使光敏器件的发光二极管流入5~8ma电流,其发出光亮使光敏器件的光敏三极管可靠饱和导通(即管压降≈0),使该输入口的输入状态由0变1。如果输入12V电压给输入口,其发光二极管的电流将会比24V输入产生的电流小一倍,由于发光亮度不够,会使光敏三极管饱和导通的可靠性降低,即会使光敏三极管产生几伏的管压降,使该输入口的输入状态变得不确定(即或为1或为0状态不定)。故对PLC输入口的输入信号的电压应为24V为好。
    PLC输出口通常有二种电路形式:1、继电器的触点输出,2、晶体管作为电子开关输出,其输出侧的供电源可以用12V,也可接其它电压值。如S7-200PLC,如是晶体管输出,可在其输出侧的L+端接+12V,输出口接电阻,电阻另一端接地(M),当输出为1时,该输出口输出电压=+12V。
    对于继电器触点输出型,其供电源交直流都可,如交流就可接220V电源,但负载电流不能过大,特别是感性负载,否则易使继电器的触点烧毁

在如何编写把十进制数转化成ASCII的程序之前,应先知道十进制数与之对应ASIIC码的数学关系及将它们存放存储器的数制表示形式:

   1、每一位十进制数其值为0~9,其二进制值为:0000~1001,放在字节存储器将占用4个二进制数的位。一个字节内含8个二进制数的位,故一个字节可表示2位十进制数。这种用4位二进制数表示一位十进制数的数制叫BCD码。

   2、每一位十进制数“X”转换为ASIIC码的原则为:30+X   如 X=4,其对应ASIIC码=34,将其放入一字节存储器里用二进制数表示:0011_0100,用16进制数表示:16#34

   3、如被转换的十进制数大为4位数,用BCD码表示可占一个字存储器空间,设为字存储器为MW10,MW10含2个字节,高字节为MB10,低字节为MB11。MB10的高4位为十进制数的千位数值,MB10的低4位为十进制数的百位数值。MB11的高4位为十进制数的十位数值,MB11的低4位为十进制数的个位数值。如将此4位十进制数转换为ASIIC码,需占用一个双字存储器空间,如VD10,它含有4个字节,每个字节代表一位ASIIC码,其每个字节的高4位数值皆=0011(3),低4位数为十进制数对应的数值,如十进制数1234,放入字存储器MW10里。其内容=0001_0010_0011_0100,用16进制数表示为:16#1234,转换为ASIIC码值放入VD10里,其内容=0011_0001_0011_0010_0011_0011_0011_0100,用16进制数表示:16# 31 32 33 34。

    了解上述3点,就可以很容易编出把十进制数转化成ASCII的程序:

    设MW10为4位十进制数存储区(存数形式为BCD码),VD10为转换为ASIIC码D的存数区。编程可以这样处理:

    1、将16#30303030送入VD10.

    2、将MB10右移4位送入MB8,再将MB8或入VB10。

    3、将MB10与16#0F相与,送入MB8,再将MB8或入VB11。

    4、将MB11右移4位送入MB8,再将MB8或入VB12。

     5、将MB11与16#0F相与,送入MB8,再将MB8或入VB13。

按这样步骤编程,其VD10的内容即为将MW10内的4位十进制数转换为ASIIC码值。


联系方式

  • 地址:上海松江 上海市松江区石湖荡镇塔汇路755弄29号1幢一层A区213室
  • 邮编:201600
  • 联系电话:未提供
  • 经理:聂航
  • 手机:15221406036
  • 微信:15221406036
  • QQ:3064686604
  • Email:3064686604@qq.com