728x90
반응형

산업기술 7

meiConfig를 이용한 기어비 설정

1. Upload Controller를 눌러 위 그림과 같은 창을 띄운 후, 해당 창의 Flash Memory를 체크하고 OK 버튼을 눌러 Parameter를 업로드한다. 2. 변경하고자 하는 모터의 Encorder를 선택한 뒤 기어비를 입력한다. 경로 : Controller/MotorList/Motor n/Encoder 0/Ratio A와 B의 값은 정수만 가능하며 작은 수 일수록 연산에 유리하다. 3. 화면 상단에 다운로드를 눌러 업로드 때와 동일한 창을 띄운다. Flash Memory를 체크한 후, OK 버튼을 클릭하면 저장된다. * meiConfig는 MEI 폴더 아래 응용프로그램들 모여 있는 폴더에 함께 있다.

산업기술/MEI 2022.07.14

[MELSEC] MX Component 4.0 x64에서 ALTCOMCLI.h 에러 처리

[MFC] MX Component 4.0 x64에서 사용하기 Mitsubish의 MX Component를 x64에서 사용할 수 있는 것은 C#으로 가능하지 C++로는 불가능하다. 그렇기 때문에 COM으로 Service를 등록해서 인터페이스를 통한 작업을 할 수밖에 없다. ATL을 이용하여 서버 stormpy.tistory.com MX Component를 64비트에서 작업하려다 보면, atlcomcli.h 에러가 발생하는데, 이것은 com 초기화가 되지 않을 때 발생한다. 프로그램을 제대로 했다면, x86으로 컴파일을 하지 않고 x64로 컴파일을 한 뒤에는 지속적으로 해당 에러가 발생하게 된다. 이것은 x64 형식으로 레지스터리가 등록되었기 때문이다. 그래서 Client가 x64로 실행되면 당연히 x64로..

산업기술/MELSEC 2022.04.21

[MELSEC] MX Component 4.0 x64에서 사용하기

Mitsubish의 MX Component를 x64에서 사용할 수 있는 것은 C#으로 가능하지 C++로는 불가능하다. 그렇기 때문에 COM으로 Service를 등록해서 인터페이스를 통한 작업을 할 수밖에 없다. ATL을 이용하여 서버를 만들고 이를 이용하는 방법을 우선 숙지하자. [ATL/MFC] 32Bit Software를 64Bit Software에서 사용하기 C++에서 x86, x64 프로그램은 서로 호환해서 사용할 수 없어서 별도로 만들어 사용해야 한다. 모든 프로그램을 자신 혹은 팀이 만들어 나간다면 아무런 문제가 없다. 하지만 외부로부터 제공되는 stormpy.tistory.com 서버 만들기 이제 ATL의 기본 조작법을 익혔다면, 해당 프로젝트에 MX Component 기능들을 연결해야 한다..

산업기술/MELSEC 2022.04.19

Power PMAC Compensation Tables

1차원 Error와 2차원 Error의 보정 방법 Power PMAC은 자체적으로 제공하는 Mapping Table을 존재한다. 기존의 명령으로 저장하던 작업을 GUI를 이용하여 작업할 수 있다. IDE를 실행시킨다. Menu/Delta Tau/Compensation Table을 실행 아래와 같은 창이 실행된다. Menu Description 1 CompTable Number 현재 작업할 Table의 Number 2 CompTable Dimension 작업할 모터의 구조 ( 기본값 : 1D : Linear ) 3 Source Motor 위치를 보상해 줄 기준 모터 번호 4 Number of Targets 기준 모터의 타겟 모터 수 기준 모터의 이동 거리에 따라 타겟 모터의 보상 값도 같이 적용된다. 5 ..

Power PMAC Gantry 제어 방법

Power PMAC의 제어 방식은 매뉴얼에는 표기되어 있지 않지만, 검색을 통해서 알아본 바로는 Skew 보상 알고리즘을 채택하고 있는 것 같다. 고급 공작기계 및 복잡한 로봇에 적용에 적합한 Dynamic Multi-Block Lookahead 및 Kinematic Equation 처리 기능들이 보다 향상되었기 때문에, 보다 효율적으로 쉬운 적용이 가능하게 됐다. Gantry제어 방식에 있어서도, 기존 Turbo PMAC 보다 훨씬 우수한 Gantry Skew Control기능을 보유하고 있으며, Pre-Trajectory 알고리즘으로 저주파 잔여 진동을 제거하는 것이 가능해 짐에 따라 고속 장비의 Settling Time 최소화 구현이 비교적 쉽게 가능하게 됐다. 근래 첨단 산업에서는 고속정밀의 자동..

FAS_MoveLinearAbsPos/FAS_MoveLinearIncPos 실행 시, FMM_INVALID_SLAVE_NUM을 리턴하는 경우

FAS_MoveLinearIncPos(BYTE nNoOfBds, int* iBdID, long* lplIncPos, DWORD lFeedrate, WORD wAccelTime) 해당 포인터 변수들은 형식을 맞춰줘야 함. int ↔ long 사이의 변환은 문제없음. long ↔ double 사이의 변환은 문제 있음. struct MotionParam { long axisCount; long axisList[MotionMax_Axes]; double position[MotionMax_Axes]; double velocity[MotionMax_Axes]; }; MotionParam의 위치, 속도 등은 double로 선언되어 있어, FAS_MoveLinearIncPos에 사용하려면 변수를 casting 해야 한..

728x90
반응형