FUNCTION BF_IOM0801U_E5 : INT
VAR_INPUT
temp_in : int;
temp_last : int;
END_VAR

VAR

END_VAR
(** {*  **)
(**  **)
(** 时  间:20210610 **)
(** 版  本:1.0 **)
(** 作  者:冯华强 **)
(** 名  称:针对IOM.0801U-E5版本以前的模块出现的跳变过滤函数 **)
(** 说  明:过滤规则: **)
(** 			温度值在进入正常值正负0.5度范围内,判断跳变值是否出现,如果出现,保持原值。如果没有跳变,更新输入值。 **)
(** 			跳变影响温度值0.1度。 **)
(** 备  注:无 **)
(** 依赖块:无 **)
(**  **)
(** *} **)
(**  **)
(** {*  **)
(** 	Input_Type: 输入 temp_in	未经通道实际值 **)
(** 					 temp_last  经跳变过滤规则过滤后的值 **)
(** 					 **)
(** 				输出 跳变过滤规则过滤后的输出值 **)
(** *} **)
(**  **)
(** if temp_last>-3960 and temp_last<-3860 and temp_in>-5030 and temp_in<-4930 then **)
	(* if - Cond *)
	LD temp_last
	GT -3960
	AND ( temp_last
		LT -3860
	)
	AND ( temp_in
		GT -5030
	)
	AND ( temp_in
		LT -4930
	)
	JMPCN ODK_SKIP_000000000000001_000000000000001

		(* then - Stmts *)

(** 	BF_IOM0801U_E5:=temp_last; **)
		(* assign - Stmt *)
		LD temp_last
		ST BF_IOM0801U_E5

		JMP ODK_END_IF_000000000000001

(** elsif temp_last>-2870 and temp_last<-2770 and temp_in>-5030 and temp_in<-4930 then **)
	(* elseif - Cond *) 
	ODK_SKIP_000000000000001_000000000000001:
	LD temp_last
	GT -2870
	AND ( temp_last
		LT -2770
	)
	AND ( temp_in
		GT -5030
	)
	AND ( temp_in
		LT -4930
	)
	JMPCN ODK_SKIP_000000000000001_000000000000002

		(* elsif - Stmts *)

(** 	BF_IOM0801U_E5:=temp_last;	 **)
		(* assign - Stmt *)
		LD temp_last
		ST BF_IOM0801U_E5

		JMP ODK_END_IF_000000000000001

(** elsif temp_last>-1780 and temp_last<-1680 and temp_in>-2850 and temp_in<-2750 then **)
	(* elseif - Cond *) 
	ODK_SKIP_000000000000001_000000000000002:
	LD temp_last
	GT -1780
	AND ( temp_last
		LT -1680
	)
	AND ( temp_in
		GT -2850
	)
	AND ( temp_in
		LT -2750
	)
	JMPCN ODK_SKIP_000000000000001_000000000000003

		(* elsif - Stmts *)

(** 	BF_IOM0801U_E5:=temp_last; **)
		(* assign - Stmt *)
		LD temp_last
		ST BF_IOM0801U_E5

		JMP ODK_END_IF_000000000000001

(** elsif temp_last>-1220 and temp_last<-1120 and temp_in>-1760 and temp_in<-1660 then **)
	(* elseif - Cond *) 
	ODK_SKIP_000000000000001_000000000000003:
	LD temp_last
	GT -1220
	AND ( temp_last
		LT -1120
	)
	AND ( temp_in
		GT -1760
	)
	AND ( temp_in
		LT -1660
	)
	JMPCN ODK_SKIP_000000000000001_000000000000004

		(* elsif - Stmts *)

(** 	BF_IOM0801U_E5:=temp_last; **)
		(* assign - Stmt *)
		LD temp_last
		ST BF_IOM0801U_E5

		JMP ODK_END_IF_000000000000001

(** elsif temp_last>-680 and temp_last<-580 and temp_in>-5030 and temp_in<-4930 then **)
	(* elseif - Cond *) 
	ODK_SKIP_000000000000001_000000000000004:
	LD temp_last
	GT -680
	AND ( temp_last
		LT -580
	)
	AND ( temp_in
		GT -5030
	)
	AND ( temp_in
		LT -4930
	)
	JMPCN ODK_SKIP_000000000000001_000000000000005

		(* elsif - Stmts *)

(** 	BF_IOM0801U_E5:=temp_last; **)
		(* assign - Stmt *)
		LD temp_last
		ST BF_IOM0801U_E5

		JMP ODK_END_IF_000000000000001

(** elsif temp_last>-140 and temp_last<-40 and temp_in>-660 and temp_in<-560 then **)
	(* elseif - Cond *) 
	ODK_SKIP_000000000000001_000000000000005:
	LD temp_last
	GT -140
	AND ( temp_last
		LT -40
	)
	AND ( temp_in
		GT -660
	)
	AND ( temp_in
		LT -560
	)
	JMPCN ODK_SKIP_000000000000001_000000000000006

		(* elsif - Stmts *)

(** 	BF_IOM0801U_E5:=temp_last;		 **)
		(* assign - Stmt *)
		LD temp_last
		ST BF_IOM0801U_E5

		JMP ODK_END_IF_000000000000001

(** elsif temp_last>400 and temp_last<500 and temp_in>-660 and temp_in<-560 then **)
	(* elseif - Cond *) 
	ODK_SKIP_000000000000001_000000000000006:
	LD temp_last
	GT 400
	AND ( temp_last
		LT 500
	)
	AND ( temp_in
		GT -660
	)
	AND ( temp_in
		LT -560
	)
	JMPCN ODK_SKIP_000000000000001_000000000000007

		(* elsif - Stmts *)

(** 	BF_IOM0801U_E5:=temp_last; **)
		(* assign - Stmt *)
		LD temp_last
		ST BF_IOM0801U_E5

		JMP ODK_END_IF_000000000000001

(** elsif temp_last>950 and temp_last<1050 and temp_in>410 and temp_in<510 then **)
	(* elseif - Cond *) 
	ODK_SKIP_000000000000001_000000000000007:
	LD temp_last
	GT 950
	AND ( temp_last
		LT 1050
	)
	AND ( temp_in
		GT 410
	)
	AND ( temp_in
		LT 510
	)
	JMPCN ODK_SKIP_000000000000001_000000000000008

		(* elsif - Stmts *)

(** 	BF_IOM0801U_E5:=temp_last;		 **)
		(* assign - Stmt *)
		LD temp_last
		ST BF_IOM0801U_E5

		JMP ODK_END_IF_000000000000001

(** elsif temp_last>1500 and temp_last<1600 and temp_in>-660 and temp_in<-560 then **)
	(* elseif - Cond *) 
	ODK_SKIP_000000000000001_000000000000008:
	LD temp_last
	GT 1500
	AND ( temp_last
		LT 1600
	)
	AND ( temp_in
		GT -660
	)
	AND ( temp_in
		LT -560
	)
	JMPCN ODK_SKIP_000000000000001_000000000000009

		(* elsif - Stmts *)

(** 	BF_IOM0801U_E5:=temp_last; **)
		(* assign - Stmt *)
		LD temp_last
		ST BF_IOM0801U_E5

		JMP ODK_END_IF_000000000000001

(** elsif temp_last>2050 and temp_last<2150 and temp_in>1510 and temp_in<1610 then **)
	(* elseif - Cond *) 
	ODK_SKIP_000000000000001_000000000000009:
	LD temp_last
	GT 2050
	AND ( temp_last
		LT 2150
	)
	AND ( temp_in
		GT 1510
	)
	AND ( temp_in
		LT 1610
	)
	JMPCN ODK_SKIP_000000000000001_00000000000000A

		(* elsif - Stmts *)

(** 	BF_IOM0801U_E5:=temp_last;		 **)
		(* assign - Stmt *)
		LD temp_last
		ST BF_IOM0801U_E5

		JMP ODK_END_IF_000000000000001

(** elsif temp_last>2590 and temp_last<2690 and temp_in>1510 and temp_in<1610 then **)
	(* elseif - Cond *) 
	ODK_SKIP_000000000000001_00000000000000A:
	LD temp_last
	GT 2590
	AND ( temp_last
		LT 2690
	)
	AND ( temp_in
		GT 1510
	)
	AND ( temp_in
		LT 1610
	)
	JMPCN ODK_SKIP_000000000000001_00000000000000B

		(* elsif - Stmts *)

(** 	BF_IOM0801U_E5:=temp_last; **)
		(* assign - Stmt *)
		LD temp_last
		ST BF_IOM0801U_E5

		JMP ODK_END_IF_000000000000001

(** elsif temp_last>3140 and temp_last<3240 and temp_in>2600 and temp_in<2700 then **)
	(* elseif - Cond *) 
	ODK_SKIP_000000000000001_00000000000000B:
	LD temp_last
	GT 3140
	AND ( temp_last
		LT 3240
	)
	AND ( temp_in
		GT 2600
	)
	AND ( temp_in
		LT 2700
	)
	JMPCN ODK_SKIP_000000000000001_00000000000000C

		(* elsif - Stmts *)

(** 	BF_IOM0801U_E5:=temp_last;	 **)
		(* assign - Stmt *)
		LD temp_last
		ST BF_IOM0801U_E5

		JMP ODK_END_IF_000000000000001

(** elsif temp_last>3690 and temp_last<3790 and temp_in>-5030 and temp_in<-4930 then **)
	(* elseif - Cond *) 
	ODK_SKIP_000000000000001_00000000000000C:
	LD temp_last
	GT 3690
	AND ( temp_last
		LT 3790
	)
	AND ( temp_in
		GT -5030
	)
	AND ( temp_in
		LT -4930
	)
	JMPCN ODK_SKIP_000000000000001_00000000000000D

		(* elsif - Stmts *)

(** 	BF_IOM0801U_E5:=temp_last; **)
		(* assign - Stmt *)
		LD temp_last
		ST BF_IOM0801U_E5

		JMP ODK_END_IF_000000000000001

(** elsif temp_last>4230 and temp_last<4330 and temp_in>3700 and temp_in<3800 then **)
	(* elseif - Cond *) 
	ODK_SKIP_000000000000001_00000000000000D:
	LD temp_last
	GT 4230
	AND ( temp_last
		LT 4330
	)
	AND ( temp_in
		GT 3700
	)
	AND ( temp_in
		LT 3800
	)
	JMPCN ODK_SKIP_000000000000001_00000000000000E

		(* elsif - Stmts *)

(** 	BF_IOM0801U_E5:=temp_last;	 **)
		(* assign - Stmt *)
		LD temp_last
		ST BF_IOM0801U_E5

		JMP ODK_END_IF_000000000000001

(** elsif temp_last>4780 and temp_last<4880 and temp_in>3700 and temp_in<3800 then **)
	(* elseif - Cond *) 
	ODK_SKIP_000000000000001_00000000000000E:
	LD temp_last
	GT 4780
	AND ( temp_last
		LT 4880
	)
	AND ( temp_in
		GT 3700
	)
	AND ( temp_in
		LT 3800
	)
	JMPCN ODK_SKIP_000000000000001_00000000000000F

		(* elsif - Stmts *)

(** 	BF_IOM0801U_E5:=temp_last;	 **)
		(* assign - Stmt *)
		LD temp_last
		ST BF_IOM0801U_E5

		JMP ODK_END_IF_000000000000001

(** elsif temp_last>5320 and temp_last<5420 and temp_in>4790 and temp_in<4890 then **)
	(* elseif - Cond *) 
	ODK_SKIP_000000000000001_00000000000000F:
	LD temp_last
	GT 5320
	AND ( temp_last
		LT 5420
	)
	AND ( temp_in
		GT 4790
	)
	AND ( temp_in
		LT 4890
	)
	JMPCN ODK_SKIP_000000000000001_00000000000000G

		(* elsif - Stmts *)

(** 	BF_IOM0801U_E5:=temp_last; **)
		(* assign - Stmt *)
		LD temp_last
		ST BF_IOM0801U_E5

		JMP ODK_END_IF_000000000000001

(** elsif temp_last>5870 and temp_last<5970 and temp_in>3700 and temp_in<3800 then **)
	(* elseif - Cond *) 
	ODK_SKIP_000000000000001_00000000000000G:
	LD temp_last
	GT 5870
	AND ( temp_last
		LT 5970
	)
	AND ( temp_in
		GT 3700
	)
	AND ( temp_in
		LT 3800
	)
	JMPCN ODK_SKIP_000000000000001_00000000000000H

		(* elsif - Stmts *)

(** 	BF_IOM0801U_E5:=temp_last; **)
		(* assign - Stmt *)
		LD temp_last
		ST BF_IOM0801U_E5

		JMP ODK_END_IF_000000000000001

(** elsif temp_last>6410 and temp_last<6510 and temp_in>5880 and temp_in<5980 then **)
	(* elseif - Cond *) 
	ODK_SKIP_000000000000001_00000000000000H:
	LD temp_last
	GT 6410
	AND ( temp_last
		LT 6510
	)
	AND ( temp_in
		GT 5880
	)
	AND ( temp_in
		LT 5980
	)
	JMPCN ODK_SKIP_000000000000001_00000000000000I

		(* elsif - Stmts *)

(** 	BF_IOM0801U_E5:=temp_last; **)
		(* assign - Stmt *)
		LD temp_last
		ST BF_IOM0801U_E5

		JMP ODK_END_IF_000000000000001

(** elsif temp_last>6950 and temp_last<7050 and temp_in>5880 and temp_in<5980 then **)
	(* elseif - Cond *) 
	ODK_SKIP_000000000000001_00000000000000I:
	LD temp_last
	GT 6950
	AND ( temp_last
		LT 7050
	)
	AND ( temp_in
		GT 5880
	)
	AND ( temp_in
		LT 5980
	)
	JMPCN ODK_SKIP_000000000000001_00000000000000J

		(* elsif - Stmts *)

(** 	BF_IOM0801U_E5:=temp_last; **)
		(* assign - Stmt *)
		LD temp_last
		ST BF_IOM0801U_E5

		JMP ODK_END_IF_000000000000001

(** elsif temp_last>8040 and temp_last<8140 and temp_in>3700 and temp_in<3800 then **)
	(* elseif - Cond *) 
	ODK_SKIP_000000000000001_00000000000000J:
	LD temp_last
	GT 8040
	AND ( temp_last
		LT 8140
	)
	AND ( temp_in
		GT 3700
	)
	AND ( temp_in
		LT 3800
	)
	JMPCN ODK_SKIP_000000000000001_00000000000000K

		(* elsif - Stmts *)

(** 	BF_IOM0801U_E5:=temp_last;	 **)
		(* assign - Stmt *)
		LD temp_last
		ST BF_IOM0801U_E5

		JMP ODK_END_IF_000000000000001

(** elsif temp_last>9150 and temp_last<9250 and temp_in>8070 and temp_in<8170 then **)
	(* elseif - Cond *) 
	ODK_SKIP_000000000000001_00000000000000K:
	LD temp_last
	GT 9150
	AND ( temp_last
		LT 9250
	)
	AND ( temp_in
		GT 8070
	)
	AND ( temp_in
		LT 8170
	)
	JMPCN ODK_SKIP_000000000000001_00000000000000L

		(* elsif - Stmts *)

(** 	BF_IOM0801U_E5:=temp_last;	 **)
		(* assign - Stmt *)
		LD temp_last
		ST BF_IOM0801U_E5

		JMP ODK_END_IF_000000000000001

(** elsif temp_last>10250 and temp_last<10350 and temp_in>8070 and temp_in<8170 then **)
	(* elseif - Cond *) 
	ODK_SKIP_000000000000001_00000000000000L:
	LD temp_last
	GT 10250
	AND ( temp_last
		LT 10350
	)
	AND ( temp_in
		GT 8070
	)
	AND ( temp_in
		LT 8170
	)
	JMPCN ODK_SKIP_000000000000001_00000000000000M

		(* elsif - Stmts *)

(** 	BF_IOM0801U_E5:=temp_last;					 **)
		(* assign - Stmt *)
		LD temp_last
		ST BF_IOM0801U_E5

		JMP ODK_END_IF_000000000000001

(** else **)
	(* else *) 
	ODK_SKIP_000000000000001_00000000000000M:

		(* else - Stmts *)

(** 	BF_IOM0801U_E5:=temp_in; **)
		(* assign - Stmt *)
		LD temp_in
		ST BF_IOM0801U_E5

(** end_if; **)
	(* if - End *) 
	ODK_END_IF_000000000000001:


END_FUNCTION