STEP7 PIW50接收温度 数据类型
- 格式:doc
- 大小:23.00 KB
- 文档页数:1
西门子数据类型概述:西门子数据类型是指在西门子PLC编程中使用的数据类型。
PLC(可编程逻辑控制器)是一种常用于工业自动化控制系统的设备,用于监控和控制生产过程。
在PLC编程中,数据类型用于定义变量的类型和大小,以便正确地处理和存储数据。
西门子提供了多种数据类型,每种类型都有其特定的用途和限制。
常见的西门子数据类型:1. 位(BOOL):用于表示开关状态,取值为0或1。
2. 字节(BYTE):用于表示8位二进制数据。
3. 整数(INT):用于表示带符号的16位整数,取值范围为-32768到32767。
4. 双字节整数(DINT):用于表示带符号的32位整数,取值范围为-2147483648到2147483647。
5. 实数(REAL):用于表示单精度浮点数,取值范围为-3.4E38到3.4E38。
6. 字符串(STRING):用于表示文本数据,可以存储多个字符。
7. 数组(ARRAY):用于存储多个相同类型的数据。
使用西门子数据类型的示例:1. 声明变量:```VARSwitchStatus: BOOL; // 声明一个位类型的变量,用于表示开关状态Temperature: REAL; // 声明一个实数类型的变量,用于表示温度Message: STRING(20); // 声明一个字符串类型的变量,最大长度为20个字符SensorData: ARRAY[1..10] OF INT; // 声明一个包含10个整数的数组END_VAR```2. 赋值和读取变量:```SwitchStatus := 1; // 将位类型的变量SwitchStatus赋值为1Temperature := 25.5; // 将实数类型的变量Temperature赋值为25.5Message := "Hello, World!"; // 将字符串类型的变量Message赋值为"Hello, World!"SensorData[1] := 10; // 将数组SensorData的第一个元素赋值为10``````IF SwitchStatus = 1 THEN // 判断位类型的变量SwitchStatus是否为1// 执行某些操作END_IF```3. 数据类型转换:在PLC编程中,有时需要将一个数据类型转换为另一个数据类型,可以使用强制类型转换操作符进行转换。
STEP7中的基本数据类型⑴位(BOOL)位数据的数据类型为BOOL(布尔)型,在软件编程中BOOL变量的值1和0常用英语单词TURE(真)和FALSE(假)来表示,对应二进制数中的“1”和“0”,常用于开关量的逻辑运算,存储空间为1位。
⑵字节(BYTE)字节数据长度为8位,数据格式为B#16#,B代表BYTE,表示数据长度为一个字节(8位),#16#表示十六进制,取值范围为B#16#0~B#16#FF。
⑶字(WORD)字数据长度为16位,这种数据可采用4种方法进行描述。
二进制:二进制的格式为2#,如2#101,取值范围为2#0~2#1111_1111_1111_1111,书写时每4位可用下划线隔开,也可直接表示为2#111111111111。
十六进制:十六进制的格式为W#16#,W代表WORD,表示数据长度为16位,#16#表示十六进制,数据取值范围为W#16#0~W #16#FFFF。
BCD码:BCD码的格式为C#,取值范围为C#0~C#999。
BCD 码是用4位二进制表示1位十进制数,4位二进制中的0000~1001组合分别表示十进制中的0~9,4位二进制中的1010~1111组合放弃不用。
BCD码的最高4位用来表示符号,十六位BCD码的取值范围为-999~+999。
在STEP7的数据格式中,BCD码的取值只取正值,与最高4位的符号无关。
无符号十进制数:无符号十进制数的格式为B#(×,×),取值范围为B#(0,0)~B#(255,255),无符号十进制数是用十进制的0~255对应二进制数中的0000_0000~1111_1111(8位),16位二进制数就需要两个0~255的数来表示,例如:B#(12,254)=2#0000_1100_1111_111012 254上面4种数据都是描述一个长度位16位的二进制数,无论你使用哪种方式都可以。
例如,如果想得到二进制数0000100110000111,可以使用2#0000_1001_1000_0111,也可以使用W#16#987,还可以使用C #987或者B#(9,135)。
S7-300/400系列PLC的数据类型2013-04-01 03:09:03 来源:朗特威自动化商城用户程序中所有的数据必须通过数据类型来识别,只有相同数据类型的变量才能进行计算,数据类型主要分为三类:•STEP7中提供的基本数据类型;•复合数据类型,编程人员可以将基本数据类型组合为复合的数据类型;•参数类型,适合函数或函数块中形参的数据类型。
梯形图、语句表和功能块图的指令系统也是与数据类型相对应的,位逻辑指令只能对位信号进行操作.语句表中的装载(L)与传送(T)指令与梯形图、功能块图中的移动 (MOVE)指令只能对字节、字和双字进行操作。
一个位是一个二进制的数字,通过“0”或“1”表示,一个字节由8个位组成,一个字由16个位组成,一个双字由32个位组成。
数学运算指令对字节、字和双字进行操作,这些字节.字和双字经过不同的编码可以转换为整数和浮点数。
一、基本数据类型基本数据类型共包含12种,每一个数据类型都具备关键字、数据长度、取值范围和常数表达格式等属性。
以字符型数据为例,该类型的关键字是Char,数据长度8bit,取值范围是ASCII字符集,常数表达格式为两个单引号包含的字符,如‘A’。
STEP7基本数据类型的关键字、长度、取值范围和以常数为例子的表示方法见表5-1。
下面简单介绍不同数据类型数据的表示方法:(1)WORD (字)一个WORD包含16个位,以二进制编码表示一个数值时,将16个位分为4个组,每个组4个位,组合表示数值中的一个数字或符号位,例如以十六进制表示数值W#16#1234 的方法如图5-2所示,使用十六进制表示数值时没有符号位,所以十六进制表示的数值不可能有负值。
以BCD码表示+123方法如图5-3所示,BCD码通常表示时间格式数值,与十六进制表示方法相比较,BCD码带有符号位,数值中不能含有A、B、C、D、E、F等十六进制数字。
计数器C同样使用BCD码表示,但是不识别符号位,例如+123和-123表示计数器的值相同,都是C#123。
step7 PID中SPPID中SP_INT和PV_IN这俩个引脚需要输入百分比。
若从温度传感器传给PIW50温度,我是需要知道此温度传感器的量程吗?若温度是50,量程为-100~100,那我是不是先用计算模块模拟出公式50/(100+100)*100%算出的值再给引脚PV_IN?我直接输入50行不?有什么区别吗?最佳答案在PID调节中有不同的物理量,因此在参数设定中需将其规格化:转帖:1.规格化概念及方法:PID参数中重要的几个变量,给定值,反馈值和输出值都是用0.0~1.0之间的实数表示,而这几个变量在实际中都是来自与模拟输入,或者输出控制模拟量的因此,需要将模拟输入转换为0.0~1.0的数据,或将0.0~1.0的数据转换为模拟输出,这个过程称为规格化规格化的方法:(即变量相对所占整个值域范围内的百分比对应与27648数字量范围内的量)对于输入和反馈,执行:变量*100/27648,然后将结果传送到PV-IN和SP-INT对于输出变量,执行:LMN*27648/100,然后将结果取整传送给PQW即可;2.例:输入参数:SP_INT(给定值):0--100%的实数。
假定模块的输入变量量程为0-10Mpa,则SP_IN的范围0.0-1.00对应0-10Mpa.可以根据这一比例关系来设置给定值。
例:如给定5.0MpaSP_INT(给定值)=5.0/(10.0-0.0)*100.0=50.0(50%)PV_IN(过程值,即反馈值):0--100%的实数。
此值来自与阀门阀位(开度)的相应的压力反馈值。
其范围0.0-1.0对应0-100%.即,当模拟量模板输入为数值为27648时则对应100%(量程的上限),数值为0时则对应0%(量程的下限)。
可以根据这一比例关系来换算PV_IN值。
例:如输入数值为12000时PV_IN(过程值,即反馈值)=12000/27648*100.0=43.403(43.403%)输出参数:当通过PID控制器(FB41)运算后,即得出调节值LMN_PER,该值已转化范围为0-27648的整型数值。
STEP7的基本数据类型及其用法汇总STEP7有3种数据类型:1. 基本数据类型2. 由基本数据类型组合而成的复合数据类型;3. 用来传送FB块和FC块参数的参数数据类型本文首先介绍一下基本数据类型。
STEP7的基本数据类型总共有7种,分别为:位(bit)、字节(Byte)、字(Word)、双字(Double Word)、整型数(INT)、双整型数(DINT)以及实数(REAL)。
1. 位(bit)取值:1、0寻址方式:地址标识符+字节地址+位地址。
图1 基本数据类型:位(bit)2. 字节(Byte)8位二进制数组成一个字节。
其中,第0位为最低位(LSB),第7位为最高位(MSB)。
寻址方式:地址标识符+B+字节地址,其中,'B'即代表字节。
图2 基本数据类型:字节(Byte)3. 字(Word)相邻的两个字节组成一个字,16位。
字用来表示无符号数,范围:[0000,FFFF]16进制,或[0,65535]10进制寻址方式:地址标识符+W+首字节地址,其中,'W'代表字。
图3 基本数据类型:字(Word)4. 双字(Double Word)相邻的两个字组成一个双字,32位。
双字也用来表示无符号,范围:[00000000,FFFFFFFF]16进制寻址方式:地址标识符+D+首字节地址,其中,'D'代表双字。
图4 基本数据类型:双字(Double Word)5. 整型数(INT)整数是有符号数,占16位。
最高位为符号位,0:正数;1:负数。
取值范围为:[-32768,32767]。
6. 双整型数(DINT)双整数也是有符号数,占32位。
最高位为符号位,0:正数;1:负数。
取值范围为:[-2147483648,2147483647]。
7. 浮点数(REAL)标准的浮点数格式如图5所示,占32位。
最高位为符号位,0:正数;1:负数。
图5 基本数据类型:浮点数(REAL)浮点数的优点是用32位的空间可以表示非常大和非常小的数。
STEP7中的基本数据类型W^(BGGL)位数据的数据类型为BOOL (布尔)型,在软件编程中BGGL 变量的值1和0常用英语单词TURE (真)和FALSE (假)来表示,对应二进制数中的“1”和“0”,常用于开关量的逻辑运算,存储空间为1位。
⑵字节(BYTE)字节数据长度为8位,数据格式为B#16#,B代表BYTE, 表示数据长度为一个字节(8位),#16#表示十六进制,取值范围为B#16#0〜B#16#FF。
⑶字(WORD)字数据长度为16位,这种数据可采用4种方法进行描述。
二进制:二进制的格式为2#,如2#101,取值范围为2#0〜2#1111_1111_1111_1111,书写时每4位可用下划线隔开,也可直接表示为2#111111111111。
十六进制:十六进制的格式为W#16#,W代表WORD, 表示数据长度为16位,#16#表示十六进制,数据取值范围为W#16#0〜W#16#FFFF。
BCD码:BCD码的格式为C#,取值范围为C#0〜C #999。
BCD码是用4位二进制表示1位十进制数,4位二进制中的0000〜1001组合分别表示十进制中的0〜9, 4位二进制中的1010〜1111组合放弃不用。
BCD码的最高4位用来表示符号,十六位86口码的取值范围为一999〜+999。
在STEP7的数据格式中,BCD码的取值只取正值,与最高4位的符号无关。
无符号十进制数:无符号十进制数的格式为B#(X, 义),取值范围为B#(0, 0)〜B#(255, 255),无符号十进制数是用十进制的0〜255对应二进制数中的0000_0000〜1111_1111 (8位),16位二进制数就需要两个0〜255的数来表示,例如:B# (12, 254)=2#0000_1100_1111_111012 254上面4种数据都是描述一个长度位16位的二进制数,无论你使用哪种方式都可以。
例如,如果想得到二进制数0000100110000111,可以使用2#0000_1001_1000_0111,也可以使用W#16#987,还可以使用C#987或者8#(9,135)。
Step7-数据类型详细说明总结汇总Step7-数据类型详细说明总结汇总STEP7中的基本数据类型⑴位(BOOL)位数据的数据类型为BOOL(布尔)型,在软件编程中BOOL 变量的值1和0常⽤英语词TURE(真)和FALSE(假)来表⽰,对应⼆进制数中的“1”和“0”,常⽤于开关量的逻辑运算,存储空间为1位。
⑵字节(BYTE)字节数据长度为8位,数据格式为B#16#,B代表BYTE,表⽰数据长度为⼀个字节(8位),#16#表⽰⼗六进制,取值范围为B#16#0~B#16#FF。
⑶字(WORD)字数据长度为16位,这种数据可采⽤4种⽅法进⾏描述。
⼆进制:⼆进制的格式为2#,如2#101,取值范围为2#0~2#1111_1111_1111_1111,书写时每4位可⽤下划线隔开,也可直接表⽰为2#111111111111。
⼗六进制:⼗六进制的格式为W#16#,W代表WORD,表⽰数据长度为16位,#16#表⽰⼗六进制,数据取值范围为W #16#0~W#16#FFFF。
BCD码:BCD码的格式为C#,取值范围为C#0~C#999。
BCD码是⽤4位⼆进制表⽰1位⼗进制数,4位⼆进制中的0000~1001组合分别表⽰⼗进制中的0~9,4位⼆进制中的1010~1111组合放弃不⽤。
BCD码的最⾼4位⽤来表⽰符号,⼗六位BCD码的取值范围为-999~+999。
在STEP7的数据格式中,BCD码的取值只取正值,与最⾼4位的符号⽆关。
⽆符号⼗进制数:⽆符号⼗进制数的格式为B#(×,×),取值范围为B#(0,0)~B#(255,255),⽆符号⼗进制数是⽤⼗进制的0~255对应⼆进制数中的0000_0000~1111_1111(8位),16位⼆进制数就需要两个0~255的数来表⽰,例如:B#(12,254)=2#0000_1100_1111_111012 254上⾯4种数据都是描述⼀个长度位16位的⼆进制数,⽆论你使⽤哪种⽅式都可以。
Step7-数据类型详细说明总结汇总STEP7中的基本数据类型⑴位(BOOL)位数据的数据类型为BOOL(布尔)型,在软件编程中BOOL 变量的值1和0常用英语词TURE(真)和FALSE(假)来表示,对应二进制数中的“1”和“0”,常用于开关量的逻辑运算,存储空间为1位。
⑵字节(BYTE)字节数据长度为8位,数据格式为B#16#,B代表BYTE,表示数据长度为一个字节(8位),#16#表示十六进制,取值范围为B#16#0~B#16#FF。
⑶字(WORD)字数据长度为16位,这种数据可采用4种方法进行描述。
二进制:二进制的格式为2#,如2#101,取值范围为2#0~2#1111_1111_1111_1111,书写时每4位可用下划线隔开,也可直接表示为2#111111111111。
十六进制:十六进制的格式为W#16#,W代表WORD,表示数据长度为16位,#16#表示十六进制,数据取值范围为W #16#0~W#16#FFFF。
BCD码:BCD码的格式为C#,取值范围为C#0~C#999。
BCD码是用4位二进制表示1位十进制数,4位二进制中的0000~1001组合分别表示十进制中的0~9,4位二进制中的1010~1111组合放弃不用。
BCD码的最高4位用来表示符号,十六位BCD码的取值范围为-999~+999。
在STEP7的数据格式中,BCD码的取值只取正值,与最高4位的符号无关。
无符号十进制数:无符号十进制数的格式为B#(×,×),取值范围为B#(0,0)~B#(255,255),无符号十进制数是用十进制的0~255对应二进制数中的0000_0000~1111_1111(8位),16位二进制数就需要两个0~255的数来表示,例如:B#(12,254)=2#0000_1100_1111_111012 254上面4种数据都是描述一个长度位16位的二进制数,无论你使用哪种方式都可以。
TIME, DA TE and TIMER in STEP 7SLC A&D CSJune 20041.西门子自动化与驱动产品的在线技术支持 (3)2.如何获得西门子自动化与驱动产品的资料 (4)3.需设备选型及订货 (4)4.西门子技术支持热线 (4)5.西门子自动化产品的其它网站 (5)6.缩写词含义 (5)7.如何使用STEP 7软件的在线帮助 (5)7.1.查找某个关键字或功能 (5)7.2.想了解某个FB/FC的功能及管脚的定义 (6)8.STEP 7中有关时间、日期的数据类型 (8)9.需要相关数据类型的详细描述 (8)10.S5TIME (Time Duration) 的格式及访问 (9)10.1.S5TIME的格式 (9)10.2.通过上位机访问PLC中S5TIME类型的数据 (10)10.3.S5TIME和TIME的转换 (11)11.DATE_AND_TIME的格式 (11)12.STEP 7相关功能块调用例程 (13)13.STEP 7中定时器的使用 (14)13.1.S7 TIMER的使用 (14)13.2.IEC TIMER的使用 (14)14.如何访问CPU的Clock Memory (14)1. 西门子自动化与驱动产品的在线技术支持首先,建议您访问Siemens A&D的产品与技术支持网站http://www4.ad.siemens.de/在主页的Product Support中选择您关心的产品或信息,或利用Search引擎直接输入关键字搜索。
您还可以访问西门子(中国)自动化与驱动集团的主页,如下图所示。
该网站同样可以提供大量的产品和系统的信息。
2. 如何获得西门子自动化与驱动产品的资料首先,建议您通过Siemens A&D的网站搜索并下载。
您还可以致电************转3785 /3726索取资料。
另外,还有大量的手册可以通过分销商订购,和其它产品的订货方式一样。
step7中piw的值Step 7中PIW的值在工业生产中,了解和掌握各种参数的值非常重要,这些参数可以是电气参数、机械参数、光学参数等等。
其中,PIW是一个普遍存在的重要参数,它在Step 7中的应用十分广泛。
本文将深入探讨PIW的意义和计算方法,帮助大家更好地理解和应用它。
1. PIW的意义PIW,即Process Indicators Weighting Factor,也可以叫做加权过程指标。
它是一个综合了各种过程指标的加权平均值,是衡量生产过程稳定性和可靠性的一个重要指标。
通过PIW的值,可以监控和控制生产过程中的各种异常情况,提高工艺水平和生产效率。
2. PIW的计算方法PIW的计算方法较为简单,但要注意各种指标的权重和单位要保持一致。
具体计算步骤如下:(1)确定需要监控的过程指标,比如温度、压力、流量等等,这些指标可以通过传感器等设备进行采集和监测;(2)对于每个指标,确定其重要性和权重,可以采用主观评价或者数据分析等方法,权重可以表示成百分比,比如温度的权重为30%、压力的权重为40%等等;(3)对于每个指标,计算其标准差和均值;(4)根据权重将各个指标的标准差加权平均,得到每个指标的PIW值;(5)将各个指标的PIW值相加,得到总的PIW值。
需要注意的是,在计算PIW值时需要将所有指标的数据单位转化为同一单位,比如在计算温度时将华氏度转化为摄氏度。
3. PIW的应用场景PIW的应用场景非常广泛,可以涉及到生产过程中的各个方面。
下面列举几个具体的应用场景:(1)提高生产效率和产品质量。
通过监控PIW值,及时发现生产过程中的异常情况,采取相应措施进行调整和改进,提高生产效率和产品质量。
(2)预测和预防故障。
通过长期监测PIW值的变化趋势,预测可能发生的故障,采取预防措施,避免生产过程中的停机和损失。
(3)优化生产过程。
通过分析各个指标的PIW值以及其变化趋势,找出生产过程中的瓶颈和不足之处,采取相应措施进行优化,提高生产效率和成品率。
step7 接收温度值比较疑问
用PIW50接收pt100的温度,然后想跟0和27648比较,小于0置0,大雨27648置27648,比较的时候IN1与IN2输入什么值?直接把PIW50作为IN1貌似不行
问题补充:
我说的不行是我在IN1输入PIW50时显示红色,PIW50不就是应该存储温度转换后的0~27648的值吗?我用的输入模块硬件配置时选择RTD,范围是Pt100标准
最佳答案
数据类型匹配问题,你使用的是整数比较的指令吧,整数比较指令的输入要求为整数,可能你在符号表里把PIW50定义符号并且数据类型选择了Word,你删除PIW50的符号定义或者改成INT类型就可以了。
step7数据类型转换如何实现整形数(INT)与字符串(String)、S5TIME、BCD 码以及实数等数据类型之间的数据转换?说明:应用转换功能可以在累加器1 中实现数据转换。
不同的转换可以只对累加器1 的低16位(位0-15)或者所有位产生影响。
其它累加器的内容不会改变。
在连续多次转换时,每一次转换累加器1 的值都会随之而改变,所以并不需要将中间转换值临时存储。
图01 所示为本条目中所涉及数据转换的总览。
图 01下面表格介绍了一些在累加器1 中进行数据转换的例子。
序号在累加器1 中进行数据转换的例子:1 整数,双整数,实数及 BCD 码之间的数据转换:STEP 7 提供以下命令来实现整数,双整数,实数及BCD 码之间的数据转换。
整数,双整数的转换:ITD:整数转换成双整数ITB:整数转换成 BCD 码DTB:双整数转换成 BCD 码DTR:双整数转换成实数BCD 码的转换:BTI: BCD 码转换成整数BTD:BCD 码转换成双整数实数的转换:RND+:取整为较大的双整数(向上取整)RND-:取整为较小的双整数(向下取整)RND:取整为最近的双整数(取整)TRUNC:截尾取整图 02 所示为将 BCD 码数值转换为实数的例子。
从图 01 中可知BCD 类型的数据需要先转换成整数或者双整数后才能再转换为实数。
图 02注意事项:下述手册可提供更多信息:S7-300 Instruction List CPU Specifications CPUs 312 IFM to 318-2 DP (章节“Data Type Conversion Instructions”)条目号:8861817。
S7-400 Instruction List CPU 412, 414, 416, 417 (章节“Data Type Conversion Instructions”) 条目号:1117645。
2 将整数和实数转换成 S5TIME 格式的数据:这里所要求的时间值单位是毫秒。
step7 温度控制调节阀pt100传过来的温度去控制调节阀开量的大小。
是不是要先知道pt100的量度范围?为什么大家都说是0-100就可以?利用FC105将模拟量变成实际工程量后,是不是再用FC106把工程量转换为模拟量输出4-20mA去驱动调节阀?那我这样的话可不可不用中间的过程直接用输入模块采集到的pt100信号连到输出模块4-20mA去驱动调节阀?最佳答案在PID调节中有不同的物理量,因此在参数设定中需将其规格化:附:1.规格化概念及方法:PID参数中重要的几个变量,给定值,反馈值和输出值都是用0.0~1.0之间的实数表示,而这几个变量在实际中都是来自与模拟输入,或者输出控制模拟量的因此,需要将模拟输入转换为0.0~1.0的数据,或将0.0~1.0的数据转换为模拟输出,这个过程称为规格化规格化的方法:(即变量相对所占整个值域范围内的百分比对应与27648数字量范围内的量)对于输入和反馈,执行:变量*100/27648,然后将结果传送到PV-IN和SP-INT对于输出变量,执行:LMN*27648/100,然后将结果取整传送给PQW即可;2.例:输入参数:SP_INT(给定值):0--100%的实数。
假定模块的输入变量量程为0-10Mpa,则SP_IN的范围0.0-1.00对应0-10Mpa.可以根据这一比例关系来设置给定值。
例:如给定5.0MpaSP_INT(给定值)=5.0/(10.0-0.0)*100.0=50.0(50%)PV_IN(过程值,即反馈值):0--100%的实数。
此值来自与阀门阀位(开度)的相应的压力反馈值。
其范围0.0-1.0对应0-100%.即,当模拟量模板输入为数值为27648时则对应100%(量程的上限),数值为0时则对应0%(量程的下限)。
可以根据这一比例关系来换算PV_IN值。
例:如输入数值为12000时PV_IN(过程值,即反馈值)=12000/27648*100.0=43.403(43.403%)输出参数:当通过PID控制器(FB41)运算后,即得出调节值LMN_PER,该值已转化范围为0-27648的整型数值。
STEP7 PIW50接收温度数据类型
用PIW50接收pt100标准型温度,那PIW50的数据类型应该设为INT还是其他的?POW60设为4-20mA信号类型驱动调节阀,那POW60又应该设为什么类型?
问题补充:
为什么要转换为浮点数,只有浮点数才可以使用吗?
最佳答案
1.PIW50接收pt100标准型温度,PIW50的数据类型既可以设置16进制WORD类型也可以设置为十进制的INT整形,设置为INT类型你看的比较习惯。
他们都可以参与计算不过参与运算的2个数的类型要一致,只要保证这一点就可以了。
2.PQW60输出也是一样的,既可以是WORD也可以是INT如果没有特别的要求的话你可以随便设定的,例如你在用到PID控制的时候它的模拟量会指定为WORD类型。
你的PQW设为INT是4-20毫安对应0-27468。
类型WORD时4-20毫安对应W#16#0-W#16#6C00
个人感觉特殊要求的话设为INT类型比较直观。