LAPTOP-SNT8I5JK\Boounion
2025-02-21 1ea724d777948a9e70ba30a06d3db28641d61d0c
1.添加警告CEqAlarmStep
已添加2个文件
已修改5个文件
155 ■■■■■ 文件已修改
SourceCode/Bond/Servo/CEqAlarmStep.cpp 67 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SourceCode/Bond/Servo/CEqAlarmStep.h 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SourceCode/Bond/Servo/CEquipment.cpp 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SourceCode/Bond/Servo/CEquipment.h 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SourceCode/Bond/Servo/CMaster.cpp 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SourceCode/Bond/Servo/Servo.vcxproj 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SourceCode/Bond/Servo/Servo.vcxproj.filters 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SourceCode/Bond/Servo/CEqAlarmStep.cpp
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,67 @@
#include "stdafx.h"
#include "CEqAlarmStep.h"
#include "Log.h"
#include "ToolUnits.h"
namespace SERVO {
    CEqAlarmStep::CEqAlarmStep() : CStep()
    {
        m_nAlarmDev = 0;
        m_nAlarmState = 0;
        m_nUnitId = 0;
        m_nAlarmLevel = 0;
        m_nAlarmCode = 0;
        m_nAlarmId = 0;
    }
    CEqAlarmStep::~CEqAlarmStep()
    {
    }
    int CEqAlarmStep::onReadData()
    {
        CStep::onReadData();
        char szBuffer[64];
        int nRet = m_pCclink->ReadData2(m_station, DeviceType::W,
            m_nAlarmDev, 64, szBuffer);
        if (0 == nRet) {
            m_nAlarmState = (unsigned int)CToolUnits::toInt16(&szBuffer[0]);
            m_nUnitId = (unsigned int)CToolUnits::toInt16(&szBuffer[2]);
            m_nAlarmId = (unsigned int)CToolUnits::toInt16(&szBuffer[4]);
            m_nAlarmCode = (unsigned int)CToolUnits::toInt16(&szBuffer[6]);
            m_nAlarmLevel = (unsigned int)CToolUnits::toInt16(&szBuffer[8]);
            LOGI("<CEqAlarmStep> Equipment Alarm state Changed<State:%d, Unit:%d, Level:%d, Code:%d, ID:%d>\n",
                m_nAlarmState, m_nUnitId, m_nAlarmLevel, m_nAlarmCode, m_nAlarmId,
                m_strText.c_str(), m_strDescription.c_str());
        }
        return 0;
    }
    int CEqAlarmStep::onComplete()
    {
        CStep::onComplete();
        LOGI("<CEqAlarmStep> onComplete.");
        return 0;
    }
    int CEqAlarmStep::onTimeout()
    {
        CStep::onTimeout();
        LOGI("<CEqAlarmStep> onTimeout.");
        return 0;
    }
    void CEqAlarmStep::setAlarmDev(int nDev)
    {
        m_nAlarmDev = nDev;
    }
}
SourceCode/Bond/Servo/CEqAlarmStep.h
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,29 @@
#pragma once
#include "CStep.h"
namespace SERVO {
    class CEqAlarmStep : public CStep
    {
    public:
        CEqAlarmStep();
        ~CEqAlarmStep();
    public:
        virtual int onReadData();
        virtual int onComplete();
        virtual int onTimeout();
        void setAlarmDev(int nDev);
    private:
        int m_nAlarmDev;
        int m_nAlarmState;
        int m_nUnitId;
        int m_nAlarmLevel;
        int m_nAlarmCode;
        int m_nAlarmId;
        std::string m_strText;
        std::string m_strDescription;
    };
}
SourceCode/Bond/Servo/CEquipment.cpp
@@ -242,20 +242,16 @@
        // ä»¥ä¸‹æ ¹æ®ä¿¡å·åšæµç¨‹å¤„理
        CStep* pStep;
        // Equipment Mode Change Report
        index = 0x360;
        // Equipment Mode Change Report(0x360)
        // Equipment Status Change Report(0x361)
        // Equipment Alarm Change Report(0x362 ~ 0x366)
        for (int i = 0; i < 7; i++) {
            index = 0x360 + i;;
        bFlag = isBitOn(pszData, size, index);
        pStep = getStep(index);
        if (pStep != nullptr) {
            pStep->onSignal(bFlag);
        }
        // Equipment Status Change Report
        index = 0x361;
        bFlag = isBitOn(pszData, size, index);
        pStep = getStep(index);
        if (pStep != nullptr) {
            pStep->onSignal(bFlag);
        }
    }
SourceCode/Bond/Servo/CEquipment.h
@@ -3,6 +3,7 @@
#include "CCLinkIEControl.h"
#include "CEqModeStep.h"
#include "CEqStatusStep.h"
#include "CEqAlarmStep.h"
#include <map>
SourceCode/Bond/Servo/CMaster.cpp
@@ -89,6 +89,46 @@
                    delete pStep;
                }
            }
            {
                CEqAlarmStep* pStep = new CEqAlarmStep();
                pStep->setWriteSignalDev(0x32);
                pStep->setAlarmDev(0x4c1d);
                if (pEquipment->addStep(0x362, pStep) != 0) {
                    delete pStep;
                }
            }
            {
                CEqAlarmStep* pStep = new CEqAlarmStep();
                pStep->setWriteSignalDev(0x33);
                pStep->setAlarmDev(0x4c4a);
                if (pEquipment->addStep(0x363, pStep) != 0) {
                    delete pStep;
                }
            }
            {
                CEqAlarmStep* pStep = new CEqAlarmStep();
                pStep->setWriteSignalDev(0x34);
                pStep->setAlarmDev(0x4c77);
                if (pEquipment->addStep(0x364, pStep) != 0) {
                    delete pStep;
                }
            }
            {
                CEqAlarmStep* pStep = new CEqAlarmStep();
                pStep->setWriteSignalDev(0x35);
                pStep->setAlarmDev(0x4ca4);
                if (pEquipment->addStep(0x365, pStep) != 0) {
                    delete pStep;
                }
            }
            {
                CEqAlarmStep* pStep = new CEqAlarmStep();
                pStep->setWriteSignalDev(0x36);
                pStep->setAlarmDev(0x4cd1);
                if (pEquipment->addStep(0x366, pStep) != 0) {
                    delete pStep;
                }
            }
            pEquipment->init();
SourceCode/Bond/Servo/Servo.vcxproj
@@ -200,6 +200,7 @@
    <ClInclude Include="CBonder.h" />
    <ClInclude Include="CCLinkPerformance\CCLinkIEControl.h" />
    <ClInclude Include="CCLinkPerformance\PerformanceMelsec.h" />
    <ClInclude Include="CEqAlarmStep.h" />
    <ClInclude Include="CEqModeStep.h" />
    <ClInclude Include="CEqStatusStep.h" />
    <ClInclude Include="CStep.h" />
@@ -233,6 +234,7 @@
    <ClCompile Include="CBonder.cpp" />
    <ClCompile Include="CCLinkPerformance\CCLinkIEControl.cpp" />
    <ClCompile Include="CCLinkPerformance\PerformanceMelsec.cpp" />
    <ClCompile Include="CEqAlarmStep.cpp" />
    <ClCompile Include="CEqModeStep.cpp" />
    <ClCompile Include="CEqStatusStep.cpp" />
    <ClCompile Include="CStep.cpp" />
SourceCode/Bond/Servo/Servo.vcxproj.filters
@@ -39,6 +39,7 @@
    <ClCompile Include="CStep.cpp" />
    <ClCompile Include="CEqModeStep.cpp" />
    <ClCompile Include="CEqStatusStep.cpp" />
    <ClCompile Include="CEqAlarmStep.cpp" />
  </ItemGroup>
  <ItemGroup>
    <ClInclude Include="AlarmManager.h" />
@@ -76,6 +77,7 @@
    <ClInclude Include="CStep.h" />
    <ClInclude Include="CEqModeStep.h" />
    <ClInclude Include="CEqStatusStep.h" />
    <ClInclude Include="CEqAlarmStep.h" />
  </ItemGroup>
  <ItemGroup>
    <ResourceCompile Include="Servo.rc" />