본문 바로가기

분류 전체보기3552

드디어 처음으로 만져보는 PLC 안녕하세요? 이번 포스팅에서는 지난주 목요일에 드디어 처음으로 PLC라는 것을 진짜로 만져 보고, 이에 대한 이론에 대해서 정리를 하고서, 실제로 했었는 수업 내용으로 나누어서 포스팅을 하고자 합니다. 우선은 이론에 관해서 들어가야 겠습니다. 위 사진은 카탈로그에 있는 고급형 이라고 해야 할까요? 그런 PLC입니다. 무언가 조그만하다는 생각이 들면 정답인게, 이게 손바닥에 들어가는 크기라고 할까요? 일단 제가 다양한 PLC를 보지는 않았지만, 아무리 커도, 양손안에는 들어가는 크기라는 생각이 들었습니다. 먼저 PLC의 모델명을 읽는 법입니다. XGB와 같은 말은 다 기종이며, 그 앞에는 CPU가 붙어 있습니다. 한마디로 연산을 처리하기 위한 CPU인 것이죠. 중요한 것은 그 뒤인데, DC입력을 의미하는 .. 2017. 11. 18.
C언어에서 비트연산을 하는 이야기 안녕하세요? 어제 포스팅에서 언급을 했다시피, 비트 연산이라는 것이 상당히 낯선 것인데, 다른 포스팅 안에서 묻어가면서 설명하기에는 내용이 너무 길어서 이렇게 따로 떼어내서 포스팅을 하게 되었습니다. 막상 이렇게 포스팅을 떼어내면 얼마 안되는 것 같기도 하지만, 그래도 엄청나게 짧은 것은 아니기는 합니다. 지난번 포스팅에서 위 스크린샷에 나와 있는 것처럼, 아두이노의 통합 개발환경 IDE인 스케치에서 위와 같이 코딩을 하고서 아두이노 보드에 업로딩해서 아래와 같은 결과가 나왔습니다. 일단 이와 같은 결과가 왜 나왔는지 설명을 하기 위해서는 byte라는 변수에 대해서 먼저 설명을 해야만 하는 필요성이 있습니다. 일단 byte라고 변수를 선언하게 되면, 8비트(bit) 단위의 연산을 시작하게 됩니다. 그래서.. 2017. 11. 17.
아두이노와 C언어 문법수업, 연산자와 for문의 수업 안녕하세요? 이번 포스팅에서는 이번주 수요일에 있었던 수업의 내용인, 아두이노 보드와 이를 제어하기 위한 C언어 문법을 수업했는데, 그 내용을 올리고자 합니다. 먼저 언급해야 할 것은, 크로스 컴파일이라고 해야 할까요? 여기서 나오는 모든 C언어로 씌여진 연산은 모두 'PC'가 아니라 '아두이노 보드'에서 처리한 것이라는 것을 알려드려야 겠습니다. 그래서 여기서는 컴파일이라고 하는 것이 아니라 정확히는 '크로스 컴파일'이라고 해서, 기계어로 변환한 언어가 PC가 아니라 아두이노 보드로 건너가(cross)된다고 해서 크로스 컴파일 이라고 합니다. 먼저 먼저 아두이노 보드에는 모니터가 없으니, 결과를 보기 위해서 Serial.begin이라는 함수를 사용합니다. 여기서 Serial이라는 것은 C언어에서 객체라.. 2017. 11. 16.
CiMon을 이용해서 통신을 연결하기 시도와 실패 안녕하세요? 어제 언급한 대로, 이번주 화요일 PLC 자동제어 수업의 남은 부분을 포스팅 하고자 합니다. 수업의 내용은 간단하게도 CiMon을 이용해서 한쪽은 서버로 만들도록 하고, 나머지 한쪽은 클라이언트가 되어서 원격으로 CiMon의 패널을 조작하는 것을 시도하고자 합니다. 우선 새로운 작업을 해야 하기 때문에, 새 프로젝트를 만들도록 합니다. 다음으로는 I/O 디바이스라는 메뉴에 들어가도록 합니다. 당연 여기서 새 디바이스를 추가하는 작업에 먼저 들어가 보고자 합니다. 여기서는 MODICON Modbus TCP Slave라는 것을 '서버'로 지정될 컴퓨터의 CiMon에서 지정을 하도록 합니다. 참고로 서버라는 것은 다른 말로 slave로서, 그냥 정보를 제공해 주는 기능만 합니다. 그래서 여기서는 .. 2017. 11. 15.