Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
ACSingleStore
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 4f4b1190
由
几米阳光
编写于
2019-01-14 16:43:59 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
1
1 个父辈
a4931ab7
显示空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
2 行增加
和
133 行删除
source/ACSingleStore/记录.txt
source/DeviceLibrary/PanasonicServo/ACServerManager.cs
source/DeviceLibrary/PanasonicServo/ACServerManager_Partial.cs
source/ACSingleStore/记录.txt
查看文件 @
4f4b119
...
@@ -35,9 +35,10 @@
...
@@ -35,9 +35,10 @@
20190114
20190114
增加一维码类型,Barcode
增加一维码类型,Barcode
20190114
改为伺服串联兼容模式
...
...
source/DeviceLibrary/PanasonicServo/ACServerManager.cs
查看文件 @
4f4b119
...
@@ -286,10 +286,6 @@ namespace OnlineStore.DeviceLibrary
...
@@ -286,10 +286,6 @@ namespace OnlineStore.DeviceLibrary
data
=
ACCMDManager
.
buildCheckData
(
data
,
data
.
Length
-
2
);
data
=
ACCMDManager
.
buildCheckData
(
data
,
data
.
Length
-
2
);
SendData
(
portName
,
data
);
SendData
(
portName
,
data
);
System
.
Threading
.
Thread
.
Sleep
(
SleepMSendons
);
System
.
Threading
.
Thread
.
Sleep
(
SleepMSendons
);
//运动
//data = ACCMDManager.GetWriteData(slvAddr, 06, ACCMDManager.BlockNo, ACCMDManager.Block_RelMove, 2);
//SendData(portName, data);
//Thread.Sleep(SleepMSendons);
UpdateBlock
(
portName
,
slvAddr
,
ACCMDManager
.
Block_RelMove
);
UpdateBlock
(
portName
,
slvAddr
,
ACCMDManager
.
Block_RelMove
);
OpenAndCloseSTB
(
portName
,
slvAddr
);
OpenAndCloseSTB
(
portName
,
slvAddr
);
...
@@ -344,10 +340,6 @@ namespace OnlineStore.DeviceLibrary
...
@@ -344,10 +340,6 @@ namespace OnlineStore.DeviceLibrary
int
preSpeed
=
GetAddrValue
(
portName
,
slvAddr
,
ACCMDManager
.
Speed_Addr
);
int
preSpeed
=
GetAddrValue
(
portName
,
slvAddr
,
ACCMDManager
.
Speed_Addr
);
if
((
preSpeed
.
Equals
(-
1
))
||
(!
preSpeed
.
Equals
(
Math
.
Abs
(
speed
))))
if
((
preSpeed
.
Equals
(-
1
))
||
(!
preSpeed
.
Equals
(
Math
.
Abs
(
speed
))))
{
{
//byte[] data = ACCMDManager.GetWriteData(slvAddr, ACCMDManager.CMD_WriteRegisters, "4601", string.Format("{0:X2}", Math.Abs(speed)), 2);
//SendData(portName, data);
//UpdateAddrValue(portName, ACCMDManager.Speed_Addr, Math.Abs(speed));
//Thread.Sleep(SleepMSendons);
string
v1
=
slvAddr
+
"064601 "
+
ACServerManager
.
SpeedToStr
(
speed
,
4
)
+
" ffff"
;
string
v1
=
slvAddr
+
"064601 "
+
ACServerManager
.
SpeedToStr
(
speed
,
4
)
+
" ffff"
;
LogUtil
.
debug
(
"轴【"
+
portName
+
"】更新速度为【"
+
speed
+
"】,发送数据【"
+
v1
+
"】"
);
LogUtil
.
debug
(
"轴【"
+
portName
+
"】更新速度为【"
+
speed
+
"】,发送数据【"
+
v1
+
"】"
);
SendStrAndSleep
(
portName
,
v1
,
SleepMSendons
);
SendStrAndSleep
(
portName
,
v1
,
SleepMSendons
);
...
@@ -356,15 +348,10 @@ namespace OnlineStore.DeviceLibrary
...
@@ -356,15 +348,10 @@ namespace OnlineStore.DeviceLibrary
}
}
if
(
speed
>
0
)
if
(
speed
>
0
)
{
{
//byte[] data = ACCMDManager.GetWriteData(slvAddr, ACCMDManager.CMD_WriteRegisters, ACCMDManager.BlockNo, ACCMDManager.Block_VolMove0, 2);
//SendData(portName, data);
UpdateBlock
(
portName
,
slvAddr
,
ACCMDManager
.
Block_VolMove0
);
UpdateBlock
(
portName
,
slvAddr
,
ACCMDManager
.
Block_VolMove0
);
}
}
else
else
{
{
//byte[] data = ACCMDManager.GetWriteData(slvAddr, ACCMDManager.CMD_WriteRegisters, ACCMDManager.BlockNo, ACCMDManager.Block_VolMove1, 2);
//SendData(portName, data);
UpdateBlock
(
portName
,
slvAddr
,
ACCMDManager
.
Block_VolMove1
);
UpdateBlock
(
portName
,
slvAddr
,
ACCMDManager
.
Block_VolMove1
);
}
}
//Thread.Sleep(SleepMSendons);
//Thread.Sleep(SleepMSendons);
...
@@ -427,9 +414,6 @@ namespace OnlineStore.DeviceLibrary
...
@@ -427,9 +414,6 @@ namespace OnlineStore.DeviceLibrary
SendData
(
portName
,
data
);
SendData
(
portName
,
data
);
Thread
.
Sleep
(
SleepMSendons
);
Thread
.
Sleep
(
SleepMSendons
);
UpdateBlock
(
portName
,
slvAddr
,
ACCMDManager
.
Block_AbsMove
);
UpdateBlock
(
portName
,
slvAddr
,
ACCMDManager
.
Block_AbsMove
);
//data = ACCMDManager.GetWriteData(slvAddr, ACCMDManager.CMD_WriteRegisters, ACCMDManager.BlockNo, ACCMDManager.Block_AbsMove, 2);
//SendData(portName, data);
//Thread.Sleep(SleepMSendons);
OpenAndCloseSTB
(
portName
,
slvAddr
);
OpenAndCloseSTB
(
portName
,
slvAddr
);
}
}
}
}
...
...
source/DeviceLibrary/PanasonicServo/ACServerManager_Partial.cs
查看文件 @
4f4b119
...
@@ -27,17 +27,6 @@ namespace OnlineStore.DeviceLibrary
...
@@ -27,17 +27,6 @@ namespace OnlineStore.DeviceLibrary
return
null
;
return
null
;
}
}
//public static void RunBlock(string portName, int slvAddr, int index)
//{
// //运动
// byte[] data = ACCMDManager.GetWriteData(slvAddr, ACCMDManager.CMD_WriteRegisters, ACCMDManager.BlockNo, index.ToString(), 2);
// SendData(portName, data);
// Thread.Sleep(100);
// CloseSTB(portName, slvAddr);
// Thread.Sleep(100);
// OnlyOpenSTB(portName, slvAddr);
//}
public
static
void
SendStrAndSleep
(
string
portName
,
string
str
,
int
sleepS
)
public
static
void
SendStrAndSleep
(
string
portName
,
string
str
,
int
sleepS
)
{
{
byte
[]
data
=
AcSerialBean
.
StringToByte
(
str
);
byte
[]
data
=
AcSerialBean
.
StringToByte
(
str
);
...
@@ -47,111 +36,6 @@ namespace OnlineStore.DeviceLibrary
...
@@ -47,111 +36,6 @@ namespace OnlineStore.DeviceLibrary
SendData
(
portName
,
data
);
SendData
(
portName
,
data
);
System
.
Threading
.
Thread
.
Sleep
(
sleepS
);
System
.
Threading
.
Thread
.
Sleep
(
sleepS
);
}
}
public
static
void
SendStr
(
string
portName
,
string
str
)
{
byte
[]
data
=
AcSerialBean
.
StringToByte
(
str
);
data
[
data
.
Length
-
1
]
=
0x00
;
data
[
data
.
Length
-
2
]
=
0x00
;
data
=
ACCMDManager
.
buildCheckData
(
data
,
data
.
Length
-
2
);
SendData
(
portName
,
data
);
}
private
static
void
DataReceived
(
string
portName
,
object
sender
,
SerialDataReceivedEventArgs
e
,
byte
[]
bits
)
{
string
strSend
=
""
;
for
(
int
i
=
0
;
i
<
bits
.
Length
;
i
++)
{
strSend
+=
string
.
Format
(
"{0:X2} "
,
bits
[
i
]);
}
if
(
IsShowMsg
)
{
LogUtil
.
info
(
"串口"
+
portName
+
" 收到数据:"
+
strSend
+
""
);
}
string
str
=
""
;
string
strFromat
=
"{0:X2}"
;
byte
slvAddr
=
bits
[
0
];
int
lenth
=
bits
[
2
];
byte
cmd
=
bits
[
1
];
if
(
cmd
.
Equals
(
ACCMDManager
.
CMD_ReadRegisters
)
&&
bits
.
Length
>
6
)
{
if
(
PreReadAddr
.
Equals
(
ACCMDManager
.
TargetPostion
))
{
if
(
lenth
==
4
)
{
str
=
string
.
Format
(
strFromat
,
bits
[
5
])
+
string
.
Format
(
strFromat
,
bits
[
6
])
+
string
.
Format
(
strFromat
,
bits
[
3
])
+
string
.
Format
(
strFromat
,
bits
[
4
]);
int
value
=
Convert
.
ToInt32
(
str
.
Trim
().
Replace
(
" "
,
""
),
16
);
SaveData
(
portName
,
slvAddr
,
ACCMDManager
.
TargetPostion
,
value
);
}
}
else
if
(
PreReadAddr
.
Equals
(
ACCMDManager
.
ActualPosition
))
{
if
(
lenth
==
4
)
{
str
=
string
.
Format
(
strFromat
,
bits
[
5
])
+
string
.
Format
(
strFromat
,
bits
[
6
])
+
string
.
Format
(
strFromat
,
bits
[
3
])
+
string
.
Format
(
strFromat
,
bits
[
4
]);
int
value
=
Convert
.
ToInt32
(
str
.
Trim
().
Replace
(
" "
,
""
),
16
);
SaveData
(
portName
,
slvAddr
,
ACCMDManager
.
ActualPosition
,
value
);
}
}
else
{
for
(
int
i
=
3
;
i
<
3
+
lenth
;
i
++)
{
str
+=
string
.
Format
(
"{0:X2} "
,
bits
[
i
]);
}
str
=
str
.
Replace
(
" "
,
""
);
int
value
=
Convert
.
ToInt32
(
str
,
16
);
LogUtil
.
info
(
"转换后结果:"
+
value
+
""
);
//this.richTextBox1.AppendText("转换后结果:" + value + "");
//Console.WriteLine("转换后结果:" + value);
}
//MessageBox.Show("收到数据:"+value);
}
else
if
(
cmd
.
Equals
(
ACCMDManager
.
CMD_ReadCoil
)
&&
bits
.
Length
>=
6
)
{
if
(
PreReadCoilAddr
.
Equals
(
ACCMDManager
.
ServerOn_Addr
))
{
if
(
lenth
==
1
)
{
str
=
string
.
Format
(
strFromat
,
bits
[
3
]);
int
value
=
Convert
.
ToInt32
(
str
.
Trim
().
Replace
(
" "
,
""
),
16
);
SaveData
(
portName
,
slvAddr
,
ACCMDManager
.
ServerOn_Addr
,
value
);
}
}
else
if
(
PreReadCoilAddr
.
Equals
(
ACCMDManager
.
Alarm_Status
))
{
if
(
lenth
==
1
)
{
str
=
string
.
Format
(
strFromat
,
bits
[
3
]);
int
value
=
Convert
.
ToInt32
(
str
.
Trim
().
Replace
(
" "
,
""
),
16
);
SaveData
(
portName
,
slvAddr
,
ACCMDManager
.
Alarm_Status
,
value
);
}
}
else
if
(
PreReadCoilAddr
.
Equals
(
ACCMDManager
.
BUSYStatus
))
{
if
(
lenth
==
1
)
{
str
=
string
.
Format
(
strFromat
,
bits
[
3
]);
int
value
=
Convert
.
ToInt32
(
str
.
Trim
().
Replace
(
" "
,
""
),
16
);
SaveData
(
portName
,
slvAddr
,
ACCMDManager
.
BUSYStatus
,
value
);
}
}
else
if
(
PreReadCoilAddr
.
Equals
(
ACCMDManager
.
HOME_CMP_Status
))
{
if
(
lenth
==
1
)
{
str
=
string
.
Format
(
strFromat
,
bits
[
3
]);
int
value
=
Convert
.
ToInt32
(
str
.
Trim
().
Replace
(
" "
,
""
),
16
);
SaveData
(
portName
,
slvAddr
,
ACCMDManager
.
HOME_CMP_Status
,
value
);
}
}
}
if
(
strSend
.
Equals
(
""
))
{
return
;
}
}
public
static
void
SaveData
(
string
portName
,
byte
slvAddr
,
string
regAddr
,
int
value
)
public
static
void
SaveData
(
string
portName
,
byte
slvAddr
,
string
regAddr
,
int
value
)
{
{
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论