Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
ACSingleStore
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 589d47aa
由
几米阳光
编写于
2019-03-21 15:35:51 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
三个轴原点返回都改为负方向
1 个父辈
faf869d1
全部展开
显示空白字符变更
内嵌
并排
正在显示
6 个修改的文件
包含
57 行增加
和
165 行删除
source/ACSingleStore/FrmStoreBox.Designer.cs
source/DeviceLibrary/PanasonicServo/ACCMDManager.cs
source/DeviceLibrary/PanasonicServo/ACServerManager.cs
source/DeviceLibrary/PanasonicServo/ACServerManager_Partial.cs
source/DeviceLibrary/ShuoKe/ShuoKeControls.cs
source/DeviceLibrary/acSingleStore/AC_SA_BoxBean_Partial.cs
source/ACSingleStore/FrmStoreBox.Designer.cs
查看文件 @
589d47a
此文件的差异被折叠,
点击展开。
source/DeviceLibrary/PanasonicServo/ACCMDManager.cs
查看文件 @
589d47a
...
...
@@ -11,7 +11,8 @@ namespace OnlineStore.DeviceLibrary
/// 0132h 原点接近传感器输入 (HOME) 状态 ReadOnly 0: 输入 OFF 1: 输入 ON
/// </summary>
public
static
string
Home_Single
=
"0132"
;
// 0022h 负方向驱动禁止输入(NOT) ReadOnly 0: 输入 OFF、 1: 输入 ON
// 0023h 正方向驱动禁止输入(POT) ReadOnly 0: 输入 OFF、 1: 输入 ON
/// <summary>
///速度 4601
/// </summary>
...
...
@@ -73,7 +74,7 @@ namespace OnlineStore.DeviceLibrary
/// <summary>
/// 读线圈01
/// </summary>
public
static
byte
CMD_ReadCoil
=
0x01
;
public
static
byte
CMD_ReadCoil
=
0x01
;
/// <summary>
/// 写线圈 05
/// </summary>
...
...
@@ -131,9 +132,9 @@ namespace OnlineStore.DeviceLibrary
public
static
byte
[]
buildCheckData
(
byte
[]
sendData
,
int
length
)
{
ushort
pChecksum
=
0
;
SerialBean
.
CalculateCRC
(
sendData
,
length
,
out
pChecksum
);
Ac
SerialBean
.
CalculateCRC
(
sendData
,
length
,
out
pChecksum
);
string
checkStr
=
Convert
.
ToString
(
pChecksum
,
16
);
byte
[]
checkByte
=
SerialBean
.
StringToByte
(
checkStr
);
byte
[]
checkByte
=
Ac
SerialBean
.
StringToByte
(
checkStr
);
if
(
checkByte
.
Length
==
1
)
{
sendData
[
length
]
=
checkByte
[
0
];
...
...
@@ -152,7 +153,7 @@ namespace OnlineStore.DeviceLibrary
// ( 2) 读取寄存器( 03h)
if
(
cmd
.
Equals
(
CMD_ReadRegisters
))
{
return
Get03WriteData
(
slvAddr
,
addr
,
length
);
return
Get03WriteData
(
slvAddr
,
addr
,
length
);
}
else
if
(
cmd
.
Equals
(
CMD_WriteRegisters
))
{
...
...
@@ -176,7 +177,7 @@ namespace OnlineStore.DeviceLibrary
byte
[]
sendData
=
new
byte
[
8
];
sendData
[
0
]
=
(
byte
)
slvAddr
;
sendData
[
1
]
=
CMD_WriteCoil
;
byte
[]
addrByte
=
SerialBean
.
StringToByte
(
addr
.
ToString
());
byte
[]
addrByte
=
Ac
SerialBean
.
StringToByte
(
addr
.
ToString
());
if
(
addrByte
.
Length
==
1
)
{
sendData
[
2
]
=
0x00
;
...
...
@@ -188,7 +189,7 @@ namespace OnlineStore.DeviceLibrary
sendData
[
2
]
=
addrByte
[
0
];
}
byte
[]
dataByte
=
SerialBean
.
StringToByte
(
dataValue
);
byte
[]
dataByte
=
Ac
SerialBean
.
StringToByte
(
dataValue
);
if
(
dataByte
.
Length
==
1
)
{
sendData
[
4
]
=
0x00
;
...
...
@@ -209,7 +210,7 @@ namespace OnlineStore.DeviceLibrary
byte
[]
sendData
=
new
byte
[
8
];
sendData
[
0
]
=
(
byte
)
slvAddr
;
sendData
[
1
]
=
CMD_ReadCoil
;
byte
[]
addrByte
=
SerialBean
.
StringToByte
(
addr
.
ToString
());
byte
[]
addrByte
=
Ac
SerialBean
.
StringToByte
(
addr
.
ToString
());
if
(
addrByte
.
Length
==
1
)
{
sendData
[
2
]
=
0x00
;
...
...
@@ -221,7 +222,7 @@ namespace OnlineStore.DeviceLibrary
sendData
[
2
]
=
addrByte
[
0
];
}
byte
[]
dataByte
=
SerialBean
.
StringToByte
(
length
.
ToString
());
byte
[]
dataByte
=
Ac
SerialBean
.
StringToByte
(
length
.
ToString
());
if
(
dataByte
.
Length
==
1
)
{
sendData
[
4
]
=
0x00
;
...
...
@@ -249,10 +250,10 @@ namespace OnlineStore.DeviceLibrary
//低位
//CRC 低位
//高位
byte
[]
sendData
=
new
byte
[
8
];
byte
[]
sendData
=
new
byte
[
8
];
sendData
[
0
]
=
(
byte
)
slvAddr
;
sendData
[
1
]
=
CMD_ReadRegisters
;
byte
[]
addrByte
=
SerialBean
.
StringToByte
(
addr
.
ToString
());
byte
[]
addrByte
=
Ac
SerialBean
.
StringToByte
(
addr
.
ToString
());
if
(
addrByte
.
Length
==
1
)
{
sendData
[
2
]
=
0x00
;
...
...
@@ -264,7 +265,7 @@ namespace OnlineStore.DeviceLibrary
sendData
[
2
]
=
addrByte
[
0
];
}
byte
[]
dataByte
=
SerialBean
.
StringToByte
(
length
.
ToString
());
byte
[]
dataByte
=
Ac
SerialBean
.
StringToByte
(
length
.
ToString
());
if
(
dataByte
.
Length
==
1
)
{
sendData
[
4
]
=
0x00
;
...
...
@@ -276,7 +277,7 @@ namespace OnlineStore.DeviceLibrary
sendData
[
5
]
=
dataByte
[
0
];
}
sendData
=
buildCheckData
(
sendData
,
sendData
.
Length
-
2
);
sendData
=
buildCheckData
(
sendData
,
sendData
.
Length
-
2
);
return
sendData
;
}
...
...
@@ -294,7 +295,7 @@ namespace OnlineStore.DeviceLibrary
byte
[]
sendData
=
new
byte
[
8
];
sendData
[
0
]
=
(
byte
)
slvAddr
;
sendData
[
1
]
=
CMD_WriteRegisters
;
byte
[]
addrByte
=
SerialBean
.
StringToByte
(
addr
.
ToString
());
byte
[]
addrByte
=
Ac
SerialBean
.
StringToByte
(
addr
.
ToString
());
if
(
addrByte
.
Length
==
1
)
{
sendData
[
2
]
=
0x00
;
...
...
@@ -306,7 +307,7 @@ namespace OnlineStore.DeviceLibrary
sendData
[
2
]
=
addrByte
[
0
];
}
byte
[]
dataByte
=
SerialBean
.
StringToByte
(
dataValue
);
byte
[]
dataByte
=
Ac
SerialBean
.
StringToByte
(
dataValue
);
if
(
dataByte
.
Length
==
1
)
{
sendData
[
4
]
=
0x00
;
...
...
@@ -316,6 +317,7 @@ namespace OnlineStore.DeviceLibrary
{
sendData
[
4
]
=
dataByte
[
0
];
sendData
[
5
]
=
dataByte
[
1
];
//sendData[4] = dataByte[1];
//sendData[5] = dataByte[0];
}
...
...
source/DeviceLibrary/PanasonicServo/ACServerManager.cs
查看文件 @
589d47a
此文件的差异被折叠,
点击展开。
source/DeviceLibrary/PanasonicServo/ACServerManager_Partial.cs
查看文件 @
589d47a
...
...
@@ -27,131 +27,15 @@ namespace OnlineStore.DeviceLibrary
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
)
{
byte
[]
data
=
SerialBean
.
StringToByte
(
str
);
byte
[]
data
=
Ac
SerialBean
.
StringToByte
(
str
);
data
[
data
.
Length
-
1
]
=
0x00
;
data
[
data
.
Length
-
2
]
=
0x00
;
data
=
ACCMDManager
.
buildCheckData
(
data
,
data
.
Length
-
2
);
SendData
(
portName
,
data
);
System
.
Threading
.
Thread
.
Sleep
(
sleepS
);
}
//public static void SendStr(string portName, string str)
//{
// byte[] data = SerialBean.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
)
{
...
...
@@ -173,17 +57,17 @@ namespace OnlineStore.DeviceLibrary
LastDataMap
.
Add
(
slvAddr
,
map
);
}
}
//
public static RegisterInfo GetData(string portName, byte slvAddr, string regAddr)
//
{
//
if (LastDataMap.ContainsKey(slvAddr))
//
{
//
if (LastDataMap[slvAddr].ContainsKey(regAddr))
//
{
//
return LastDataMap[slvAddr][regAddr];
//
}
//
}
//
return null;
//
}
public
static
RegisterInfo
GetData
(
string
portName
,
byte
slvAddr
,
string
regAddr
)
{
if
(
LastDataMap
.
ContainsKey
(
slvAddr
))
{
if
(
LastDataMap
[
slvAddr
].
ContainsKey
(
regAddr
))
{
return
LastDataMap
[
slvAddr
][
regAddr
];
}
}
return
null
;
}
public
static
void
SendData
(
string
portName
,
byte
[]
data
,
int
reviceLength
)
{
...
...
@@ -200,7 +84,7 @@ namespace OnlineStore.DeviceLibrary
}
if
(
IsShowMsg
)
{
LogUtil
.
info
(
"串口"
+
portName
+
" 收到数据:"
+
strSend
+
""
);
LogUtil
.
info
(
"串口"
+
portName
+
" 收到数据:"
+
strSend
+
""
);
}
}
public
static
void
SendData
(
string
portName
,
byte
[]
data
)
...
...
@@ -210,7 +94,7 @@ namespace OnlineStore.DeviceLibrary
return
;
}
byte
[]
returnData
=
SendCommand
(
portName
,
data
,
50
,
8
);
if
(
returnData
!=
null
)
if
(
returnData
!=
null
)
{
string
strSend
=
""
;
for
(
int
i
=
0
;
i
<
returnData
.
Length
;
i
++)
...
...
@@ -231,6 +115,10 @@ namespace OnlineStore.DeviceLibrary
/// <returns>返回值的长度</returns>
public
static
byte
[]
SendCommand
(
string
portName
,
byte
[]
data
,
int
outTime
,
int
reviceLength
)
{
if
(
outTime
>
80
)
{
outTime
=
80
;
}
byte
[]
returnData
=
null
;
try
...
...
@@ -250,7 +138,7 @@ namespace OnlineStore.DeviceLibrary
}
if
(
IsShowMsg
)
{
LogUtil
.
info
(
"串口"
+
portName
+
" 写入数据:"
+
strSend
+
""
);
LogUtil
.
info
(
"串口"
+
portName
+
" 写入数据:"
+
strSend
+
""
);
}
AcSerialBean
bean
=
GetSerialBean
(
portName
);
if
(
bean
==
null
)
...
...
@@ -279,7 +167,7 @@ namespace OnlineStore.DeviceLibrary
public
static
void
SendStr
(
string
portName
,
int
slvAddr
,
string
str
)
{
//string str = txtSendStr.Text;
byte
[]
data
=
SerialBean
.
StringToByte
(
str
);
byte
[]
data
=
Ac
SerialBean
.
StringToByte
(
str
);
data
[
data
.
Length
-
1
]
=
0x00
;
data
[
data
.
Length
-
2
]
=
0x00
;
data
=
ACCMDManager
.
buildCheckData
(
data
,
data
.
Length
-
2
);
...
...
@@ -346,13 +234,13 @@ namespace OnlineStore.DeviceLibrary
public
static
void
UpdateBlock
(
string
portName
,
int
slvAddr
,
string
blockNum
)
{
int
preNum
=
GetAddrValue
(
portName
,
slvAddr
,
ACCMDManager
.
BlockNo
);
int
preNum
=
GetAddrValue
(
portName
,
slvAddr
,
ACCMDManager
.
BlockNo
);
if
(
preNum
.
Equals
(-
1
)
||
(!
preNum
.
ToString
().
Equals
(
blockNum
)))
{
byte
[]
data
=
ACCMDManager
.
GetWriteData
(
slvAddr
,
ACCMDManager
.
CMD_WriteRegisters
,
ACCMDManager
.
BlockNo
,
blockNum
,
2
);
byte
[]
data
=
ACCMDManager
.
GetWriteData
(
slvAddr
,
ACCMDManager
.
CMD_WriteRegisters
,
ACCMDManager
.
BlockNo
,
blockNum
,
2
);
SendData
(
portName
,
data
);
int
value
=
Convert
.
ToInt16
(
blockNum
);
UpdateAddrValue
(
portName
,
slvAddr
,
ACCMDManager
.
BlockNo
,
value
);
UpdateAddrValue
(
portName
,
slvAddr
,
ACCMDManager
.
BlockNo
,
value
);
Thread
.
Sleep
(
SleepMSendons
);
}
}
...
...
@@ -394,7 +282,7 @@ namespace OnlineStore.DeviceLibrary
}
if
(
IsShowMsg
)
{
LogUtil
.
info
(
"串口"
+
portName
+
" 收到数据:"
+
strSend
+
""
);
LogUtil
.
info
(
"串口"
+
portName
+
" 收到数据:"
+
strSend
+
""
);
}
string
strFromat
=
"{0:X2}"
;
byte
slvAddrR
=
reviceData
[
0
];
...
...
@@ -442,7 +330,7 @@ namespace OnlineStore.DeviceLibrary
if
(
IsShowMsg
)
{
LogUtil
.
info
(
"串口"
+
portName
+
" 收到数据:"
+
strSend
+
""
);
LogUtil
.
info
(
"串口"
+
portName
+
" 收到数据:"
+
strSend
+
""
);
}
string
strFromat
=
"{0:X2}"
;
byte
slvAddrR
=
reviceData
[
0
];
...
...
source/DeviceLibrary/ShuoKe/ShuoKeControls.cs
查看文件 @
589d47a
此文件的差异被折叠,
点击展开。
source/DeviceLibrary/acSingleStore/AC_SA_BoxBean_Partial.cs
查看文件 @
589d47a
...
...
@@ -163,18 +163,9 @@ namespace OnlineStore.DeviceLibrary
}
else
if
(
wait
.
WaitType
==
5
)
{
if
(
wait
.
IsHomeMove
)
{
wait
.
IsEnd
=
ShuoKeControls
.
IsHomeMoveEnd
(
wait
.
SlvAddr
,
StoreMove
.
LastSetpTime
);
}
else
{
wait
.
IsEnd
=
ShuoKeControls
.
IsMoveEnd
(
wait
.
SlvAddr
,
StoreMove
.
LastSetpTime
);
}
if
(!
wait
.
IsEnd
)
{
ShuoKeControls
.
GetStatus
(
wait
.
SlvAddr
);
}
string
msg
=
""
;
wait
.
IsEnd
=
ShuoKeIsEnd
(
wait
,
out
msg
);
NotOkMsg
=
NotOkMsg
+
" "
+
msg
;
}
if
(
wait
.
IsEnd
)
{
...
...
@@ -206,7 +197,18 @@ namespace OnlineStore.DeviceLibrary
}
}
private
bool
ShuoKeIsEnd
(
WaitResultInfo
wait
,
out
string
msg
)
{
msg
=
""
;
if
(
wait
.
IsHomeMove
)
{
return
ShuoKeControls
.
IsHomeMoveEnd
(
wait
.
SlvAddr
,
StoreMove
.
LastSetpTime
,
out
msg
);
}
else
{
return
ShuoKeControls
.
IsMoveEnd
(
wait
.
SlvAddr
,
wait
.
TargetPosition
,
StoreMove
.
LastSetpTime
,
out
msg
);
}
}
#
endregion
#
region
入库
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论