SD1000 v2.0부터 새로 멀티컨넥션 기능을 제공합니다.

이번 달에는 추후 릴리즈 될 v2.0버전의 기능을 미리 보여줍니다.




1. 개요

SD1000 멀티커넥션 기능은 마스터 SD에서만 동작하며, 최대 4대의 슬레이브에 동시 접속하도록 동작합니다.

멀티커넥션 모드에는 다음과 같이 두가지 옵션이 있습니다.

 

- 멀티 드롭 모드

  1개의 마스터가 최대 4대의 슬레이브와 동시에 양방향 통신을 하는 기능입니다.

 

- 노드 스위칭 모드

  1개의 마스터가 최대 4대의 슬레이브와 동시에 연결은 유지하지만, 실제 통신은 하나의 슬레이브와 통신하는 기능으로 마스터와 슬레이브간 통신변경은 AT커멘드를 사용하여 이루어 집니다.



 

2. 멀티 드롭 모드

 

2.1 슬레이브 SD의 설정.

- MODE3 으로 설정하여 모든 블루투스 연결을 허용하도록 합니다.

만약 정해진 마스터와만 연결되길 원하는 경우 마스터의 BD 어드레스를 S46 레지스터에 저장한 후 모드를 MODE2 로 설정하면 됩니다.

아래의 설정은 4대의 슬레이브 제품을 MODE3로 변경하는 설정을 보여줍니다.




2.2 마스터의 설정

현재의 동작 상태인 SINGLE CONNECT에서 멀티 드롭 모드로 설정하고 접속할 각 슬레이브의 BD 어드레스를 지정합니다.

블루투스 동작모드를 MODE1 로 설정하여, 부팅 후 지정된 모든 슬레이브에 접속하도록 설정합니다.



2.3 멀티 드롭 모드 결과

아래의 화면은 간단한 동작 흐름을 보여줍니다.

아래화면에서는 로컬에코 기능을 켜놓은 상태에서 동작한 형태로 자기자신이 보낸 것과 받은 것이 모두 표시됩니다.

마스터에서는 아래와 같은 순서로 데이터를 보냅니다.

 

- 마스터가 보낸 데이터 --> Hello~SlaveA

- 슬레이브A 응답 <-- A_Send_Hello~Master

- 마스터가 보낸 데이터 --> Hello~SlaveB

- 슬레이브B가 응답 <-- B_Send_Hello~Master

- 마스터가 보낸 데이터 --> Hello~SlaveC

- 슬레이브C가 응답 <-- C_Send_Hello~Master

- 마스터가 보낸 데이터 --> Hello~SlaveD

- 슬레이브D가 응답 <-- D_Send_Hello~Master

 

마스터가 보낸 데이터는 모든 슬레이브에 전송되고 각 슬레이브가 보낸 데이터는 마스터로 전송됩니다.




3
. 노드 스위칭 모드

 

3.1 슬레이브 SD의 설정.

- 위의 멀티 드롭 모드와 동일하게 설정합니다.



3.2 마스터의 설정

현재의 동작 상태인 SINGLE CONNECT에서 노드 스위칭 모드로 설정하고 접속할 각 슬레이브의 BD 어드레스를 지정합니다.

블루투스 동작모드를 MODE1 로 설정하여, 부팅 후 지정된 모든 슬레이브에 접속하도록 설정합니다.




3.3 노드 스위칭 모드 결과

 

아래는 두 대의 슬레이브를 지정하여 1:2 로 원하는 장비를 선택하여 통신하는 형태입니다.

하나는 바코드리더, 나머지 하나는 프린터(COM31)를 연결한 것으로 가정하고 동작합니다.

처음 연결은 바코드 리더(COM32)로부터 데이터를 받습니다.

+++ ATO2 명령으로 프린터와 통신하는 상태로 변경한 후 PC에서 프린터 쪽으로 데이터를 전송합니다.

자세한 명령어에 대한 설명은 추후 릴리즈 될 매뉴얼 등에서 확인하시기 바랍니다.

 

 

* 주의사항

멀티 드롭 모드는 300바이트 이상의 데이터가 버퍼에 쌓일 경우 흐름제어와 상관없이 버퍼를 비웁니다. 따라서 많은 양의 데이터 통신 시 데이터 유실이 발생할 수 있습니다. 특히 양방향 통신 시 멀티 연결 유지를 위해 수시로 끊김 및 재부팅 현상이 일어날 수 있습니다. 따라서 적용 전 충분한 환경 테스트를 필요로 합니다.

  접속 안정성을 위해 강제 접속 종료를 수행, Disconnect 메시지가 연속으로 표시될 수 있습니다.

 

 노드 스위칭 모드는 1:1 싱글 모드와 거의 동일한 성능과 흐름제어를 제공합니다.


신고
Posted by wookjoong


티스토리 툴바