|
@@ -2,10 +2,7 @@ package com.huimv.env.input.controller;
|
|
|
|
|
|
|
|
|
import com.huimv.env.input.c.MyNativeClass;
|
|
|
-import com.sun.jna.Function;
|
|
|
-import com.sun.jna.Library;
|
|
|
-import com.sun.jna.Native;
|
|
|
-import com.sun.jna.NativeLibrary;
|
|
|
+import com.sun.jna.*;
|
|
|
import org.springframework.web.bind.annotation.GetMapping;
|
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
|
|
@@ -23,9 +20,8 @@ import org.springframework.web.bind.annotation.RestController;
|
|
|
@RequestMapping("/baseFarm")
|
|
|
public class BaseFarmController {
|
|
|
|
|
|
-
|
|
|
- @GetMapping("/test")
|
|
|
- public String add() {
|
|
|
+ @GetMapping("/test")
|
|
|
+ public String add() {
|
|
|
|
|
|
// 前有功功率 前无功功率 前视在功率 + 前 128个电流值
|
|
|
// int[] lastData = new int[131];
|
|
@@ -33,25 +29,35 @@ public class BaseFarmController {
|
|
|
// int[] curretData = new int[131];
|
|
|
|
|
|
|
|
|
- NativeLibrary instance = NativeLibrary.getInstance("/c/libpredict_printf.so");
|
|
|
- Function func = instance.getFunction("current_detection");
|
|
|
- int[] lastData = new int[]{2,0,222,-5,-6,-8,-4,-2,-7,-2,-4,-5,-5,-7,-6,-2,-4,-7,0,-5,-5,-1,0,-2,-4,-6,-4,-2,-6,-5,-6,-3,-4,-6,-7,-6,1,-5,-7,-4,-5,-7,-4,-3,-3,-6,-5,-6,-7,-1,0,-5,-6,-4,-8,-7,-6,-5,-7,-5,-4,-5,-5,-5,-6,-3,-5,-4,-6,-6,-7,-4,-6,-5,-7,-6,-7,-12,1,-8,-6,-6,-4,-6,-5,-5,-4,-4,-4,-6,-4,-8,-11,-5,-2,-6,-5,-3,-7,-4,-6,-5,-5,-6,-7,-5,0,-3,-5,-3,-6,-4,-6,-6,-7,-5,-5,-4,-6,-3,-7,-7,-5,-6,-3,-6,-9,-6,-4,-7,-4};
|
|
|
- int[] curretData = new int[]{110,22,178,3,-6,-8,-4,-5,-4,-6,-7,-7,-6,-8,-4,-7,-7,-8,-5,-12,-6,-8,-6,-5,-8,-5,-8,-8,-7,-4,-8,-169,-479,-389,-380,-336,-247,-191,-151,-137,-117,-85,-16,-5,-2,-6,-3,-4,-2,-7,-2,-4,-4,-8,-6,-3,-5,-4,-3,-3,-2,-3,-6,-3,-5,-3,-1,-4,-3,1,144,468,409,363,328,238,179,148,124,108,75,6,-7,-3,-6,-5,-3,-5,-8,-5,-7,-7,-7,-7,-1,-3,-5,-5,-9,-6,0,-12,-9,-4,-10,-6,-6,-6,-10,-132,-469,-446,-367,-334,-251,-191,-153,-133,-113,-89,-20,0,-3,-2,-6,-4,-4,-4,-3,-6,-4};
|
|
|
- Object res = func.invoke(Integer.class, new Object[]{lastData,curretData});
|
|
|
- System.out.println( res);
|
|
|
|
|
|
-// for (int i = 0; i < 100; i++) {
|
|
|
-// int[] lastData = new int[]{2,0,222,-5,-6,-8,-4,-2,-7,-2,-4,-5,-5,-7,-6,-2,-4,-7,0,-5,-5,-1,0,-2,-4,-6,-4,-2,-6,-5,-6,-3,-4,-6,-7,-6,1,-5,-7,-4,-5,-7,-4,-3,-3,-6,-5,-6,-7,-1,0,-5,-6,-4,-8,-7,-6,-5,-7,-5,-4,-5,-5,-5,-6,-3,-5,-4,-6,-6,-7,-4,-6,-5,-7,-6,-7,-12,1,-8,-6,-6,-4,-6,-5,-5,-4,-4,-4,-6,-4,-8,-11,-5,-2,-6,-5,-3,-7,-4,-6,-5,-5,-6,-7,-5,0,-3,-5,-3,-6,-4,-6,-6,-7,-5,-5,-4,-6,-3,-7,-7,-5,-6,-3,-6,-9,-6,-4,-7,-4};
|
|
|
-// int[] curretData = new int[]{110,22,178,3,-6,-8,-4,-5,-4,-6,-7,-7,-6,-8,-4,-7,-7,-8,-5,-12,-6,-8,-6,-5,-8,-5,-8,-8,-7,-4,-8,-169,-479,-389,-380,-336,-247,-191,-151,-137,-117,-85,-16,-5,-2,-6,-3,-4,-2,-7,-2,-4,-4,-8,-6,-3,-5,-4,-3,-3,-2,-3,-6,-3,-5,-3,-1,-4,-3,1,144,468,409,363,328,238,179,148,124,108,75,6,-7,-3,-6,-5,-3,-5,-8,-5,-7,-7,-7,-7,-1,-3,-5,-5,-9,-6,0,-12,-9,-4,-10,-6,-6,-6,-10,-132,-469,-446,-367,-334,-251,-191,-153,-133,-113,-89,-20,0,-3,-2,-6,-4,-4,-4,-3,-6,-4};
|
|
|
-// int num = MyNativeClass.LibraryshowChar.LIBRARY_CHAR.current_detection(lastData, curretData);
|
|
|
+// for (int i = 0; i < 100; i++) {
|
|
|
//
|
|
|
-// // 0没测到 1检测到
|
|
|
-// System.out.println( i+"-->"+num);
|
|
|
-// }
|
|
|
-
|
|
|
-
|
|
|
+// NativeLibrary instance = NativeLibrary.getInstance("/c/libpredict_printf.so");
|
|
|
+// Function func = instance.getFunction("current_detection");
|
|
|
+// int[] lastData = new int[]{2,0,222,-5,-6,-8,-4,-2,-7,-2,-4,-5,-5,-7,-6,-2,-4,-7,0,-5,-5,-1,0,-2,-4,-6,-4,-2,-6,-5,-6,-3,-4,-6,-7,-6,1,-5,-7,-4,-5,-7,-4,-3,-3,-6,-5,-6,-7,-1,0,-5,-6,-4,-8,-7,-6,-5,-7,-5,-4,-5,-5,-5,-6,-3,-5,-4,-6,-6,-7,-4,-6,-5,-7,-6,-7,-12,1,-8,-6,-6,-4,-6,-5,-5,-4,-4,-4,-6,-4,-8,-11,-5,-2,-6,-5,-3,-7,-4,-6,-5,-5,-6,-7,-5,0,-3,-5,-3,-6,-4,-6,-6,-7,-5,-5,-4,-6,-3,-7,-7,-5,-6,-3,-6,-9,-6,-4,-7,-4};
|
|
|
+// int[] curretData = new int[]{110,22,178,3,-6,-8,-4,-5,-4,-6,-7,-7,-6,-8,-4,-7,-7,-8,-5,-12,-6,-8,-6,-5,-8,-5,-8,-8,-7,-4,-8,-169,-479,-389,-380,-336,-247,-191,-151,-137,-117,-85,-16,-5,-2,-6,-3,-4,-2,-7,-2,-4,-4,-8,-6,-3,-5,-4,-3,-3,-2,-3,-6,-3,-5,-3,-1,-4,-3,1,144,468,409,363,328,238,179,148,124,108,75,6,-7,-3,-6,-5,-3,-5,-8,-5,-7,-7,-7,-7,-1,-3,-5,-5,-9,-6,0,-12,-9,-4,-10,-6,-6,-6,-10,-132,-469,-446,-367,-334,-251,-191,-153,-133,-113,-89,-20,0,-3,-2,-6,-4,-4,-4,-3,-6,-4};
|
|
|
+// Object res = func.invoke(Integer.class, new Object[]{lastData,curretData});
|
|
|
+// System.out.println( i+"-->"+res);
|
|
|
+// }
|
|
|
+
|
|
|
+ for (int i = 0; i < 10000; i++) {
|
|
|
+ int[] lastData = new int[]{2,0,222,-5,-6,-8,-4,-2,-7,-2,-4,-5,-5,-7,-6,-2,-4,-7,0,-5,-5,-1,0,-2,-4,-6,-4,-2,-6,-5,-6,-3,-4,-6,-7,-6,1,-5,-7,-4,-5,-7,-4,-3,-3,-6,-5,-6,-7,-1,0,-5,-6,-4,-8,-7,-6,-5,-7,-5,-4,-5,-5,-5,-6,-3,-5,-4,-6,-6,-7,-4,-6,-5,-7,-6,-7,-12,1,-8,-6,-6,-4,-6,-5,-5,-4,-4,-4,-6,-4,-8,-11,-5,-2,-6,-5,-3,-7,-4,-6,-5,-5,-6,-7,-5,0,-3,-5,-3,-6,-4,-6,-6,-7,-5,-5,-4,-6,-3,-7,-7,-5,-6,-3,-6,-9,-6,-4,-7,-4};
|
|
|
+ int[] curretData = new int[]{110,22,178,3,-6,-8,-4,-5,-4,-6,-7,-7,-6,-8,-4,-7,-7,-8,-5,-12,-6,-8,-6,-5,-8,-5,-8,-8,-7,-4,-8,-169,-479,-389,-380,-336,-247,-191,-151,-137,-117,-85,-16,-5,-2,-6,-3,-4,-2,-7,-2,-4,-4,-8,-6,-3,-5,-4,-3,-3,-2,-3,-6,-3,-5,-3,-1,-4,-3,1,144,468,409,363,328,238,179,148,124,108,75,6,-7,-3,-6,-5,-3,-5,-8,-5,-7,-7,-7,-7,-1,-3,-5,-5,-9,-6,0,-12,-9,-4,-10,-6,-6,-6,-10,-132,-469,-446,-367,-334,-251,-191,-153,-133,-113,-89,-20,0,-3,-2,-6,-4,-4,-4,-3,-6,-4};
|
|
|
+ int num = MyNativeClass.LibraryshowChar.LIBRARY_CHAR.current_detection(lastData, curretData);
|
|
|
+ // 0没测到 1检测到
|
|
|
+ if (num == -1){
|
|
|
+ System.out.println( i+"-->"+num);
|
|
|
+ }
|
|
|
+ }
|
|
|
return "成功";
|
|
|
+ }
|
|
|
+
|
|
|
+ @GetMapping("/test1")
|
|
|
+ public String add2() throws InterruptedException {
|
|
|
|
|
|
+ String add = add();
|
|
|
+ return add;
|
|
|
}
|
|
|
|
|
|
+
|
|
|
}
|