복잡하고 정교한 무언가를 만들어내려면 설계도가 필요합니다. 건축물 설계도가 필요한 건 당연하고, 간단한 업무를 수행하거나 여행을 갈 때도 계획표를 짜야 더 효율적입니다. 하드웨어나 소프트웨어를 개발하는 분들께는 더더욱 이런 설계도가 필요하겠죠. 계획표 작성방법→
특히 과정을 담아낸 설계도가 있다면 더 유용하지 않을까요? 이런 분들을 위한 그래픽 시스템이 바로 블록 다이어그램입니다. 블록 다이어그램은 어떤 것이길래 개발자 및 엔지니어에게 꼭 필요하다는 건지, 그 이유를 알아보겠습니다.
Part1 : 블록 다이어그램
1.정의, 그리고 왜 중요한가
블록 다이어그램은 핵심 프로세스를 구역을 나눈 후, 그래픽 요소(블록・선・화살표)로 나타낸 것을 말합니다. 이는 수치 또는 물리적인 자료와 그 흐름을 더욱 명료하게 이해하기 위해서인데요. 블록 다이어그램은 용도에 따라 공학/전산 등에서 쓰이는 블록 다이어그램과 지구과학/지질에서 쓰이는 블록 다이어그램으로 나뉩니다.
블록 다이어그램은 개인이 시스템의 작동 방식을 설명하거나 교육하기 위해 사용됩니다. 복잡한 워크플로우나 알고리즘 구조도 정확하게 전달할 수 있다는 점이 블록 다이어그램의 장점입니다. 하드웨어 및 소프트웨어 개발자와 엔지니어가 기존 시스템을 설계하거나 업데이트할 때 블록 다이어그램 그리기가 유리합니다.
2. 구성 요소
1) 전달요소
블록 다이어그램에서 전달요소는 입력을 받아 출력으로 변환시키는 요소를 말합니다.
2) 상자, 전달함수
위 블록 다이어그램 예시에서 G(s)에 해당하는 부분을 전달함수라고 부릅니다. 전달함수가 쓰인 상자는 시스템의 주요 부분이나 기능을 나타냅니다. 시스템의 모든 블록에는 입력 및 출력이 하나만 존재합니다.
3) 화살표
화살표는 블록 다이어그램에서 소프트웨어 설계나 기타 프로세스를 나타날 때 신호 혹은 데이터의 흐름을 나타내는 용도입니다.
4) 가산점
블록 다이어그램 가산점은 어떤 신호가 가산되는 지점을 의미합니다.
5) 인출점
블록 다이어그램에서 단위 피드백 제어계와 같은 형태에서 신호가 인출되는 지점을 말합니다.
3. 블록 다이어그램 예시
1) 기능 블록 다이어그램
기능 블록 다이어그램은 특정 하드웨어나 소프트웨어 등의 프로세스를 보여줍니다. 이 블록 다이어그램을 통해 시스템의 주요 기능 확인이 가능합니다. 만약 자판기의 프로세스를 블록 다이어그램으로 보여준다면 동전을 넣으면 어떻게 되는지, 거스름돈을 어떤 과정으로 주는지, 뜨거운 커피가 나온다면 물을 언제 붓고, 커피를 언제 넣어서 자판기 커피로 나오는지 등 시스템 프로세스가 나타나게 됩니다.
2) 시스템 블록 다이어그램
블록 다이어그램은 단일 시스템을 해석하는 용도로만 쓰이지 않습니다. 두 개의 개별시스템이 동시에 작동할 경우에도 시스템 블록 다이어그램으로 나타낼 수 있습니다. 예를 들어 CCTV와 CCTV에 비친 모습에 따라 경고 센서 시스템이 동작한다면 이를 시스템 블록 다이어그램을 통해 그 프로세스를 보여주는 것이 가능합니다.
3) 제어 블록 다이어그램
제어 블록 다이어그램은 워크 플로우 제어 신호를 시연하는 다이어그램입니다. 제어 신호 시연이 필요할 때 유용합니다.
4.블록 다이어그램의 장점&한계
장점:
블록 다이어그램의 가장 큰 장점은 복잡한 시스템을 간단하게 표현할 수 있다는 것입니다. 사용자는 블록 다이어그램을 통해 시스템의 구성 요소와 그들 사이의 관계를 쉽게 이해할 수 있습니다. 또한, 블록 다이어그램은 문제 해결이나 새로운 설계를 위한 중요한 도구로 사용될 수 있습니다.
한계:
블록 다이어그램도 완벽하지 않습니다. 블록 다이어그램은 시스템의 전체 구조를 간략하게 표현하므로, 일부 세부 사항은 생략될 수 있습니다. 또한, 블록 다이어그램만으로는 시스템의 성능이나 효율성 등을 정확히 평가할 수 없습니다.
Part2 : 블록 다이어그램 프로그램 - Boardmix
지금까지 블록 다이어그램이 어디에 쓰이는지, 블록 다이어그램 예시와 함께 살펴보았습니다. 그렇다면 블록 다이어그램 프로그램을 활용하여 직접 블록 다이어그램을 생성하는 방법을 알아보도록 하겠습니다. 블록 다이어그램 툴로 사용될 프로그램은 화이트보드를 그대로 재현한 간편한 인터페이스가 특징인 Boardmix입니다.
1단계
다섯 번째 아이콘인 모양 도구를 클릭하면 다양한 형태의 모양이 나옵니다. 이 중 박스를 클릭하면 블록 다이어그램에 쓰이는 블록을 만들 수 있습니다. 기호도 다양하게 활용 가능합니다.
2단계
박스를 더블 클릭하면 블록 안에 전달함수를 의미하는 단어를 집어 넣을 수 있습니다. 전달함수를 박스 안에 넣어 어떤 소프트웨어 블록 다이어그램 내에서 어떤 과정이 도출되는지 그 과정을 그리겠습니다.
화살표를 활용하여 직렬 프로세스를 표현했습니다. Boardmix 예시에서는 간단하게 표현했지만, 앞에서 설명 드린 Boardmix 모양 도구에 다양한 기호가 있어 블록 다이어그램에 쓰이는 가산점, 인출점도 그대로 표현이 가능합니다. 블록이나 화살표의 위치도 쉽게 옮길 수 있어서 예시로 보여드린 직렬연결 외에도 병렬연결 블록 다이어그램도 간단하게 표현 가능합니다. 다양한 기호를 활용하여 제어 블록 다이어그램도 Boardmix 속 화이트 보드 안에 담아낼 수 있습니다.
마무리
지금까지 블록 다이어그램의 정의와 필요한 이유, 예시 그리고 Boardmix에서 어떤 식으로 사용 하는지 알아보았습니다. 예시로는 간단한 과정을 보여드렸지만 Boardmix에 다양한 템플릿이 있으니 이를 활용해보셔도 좋습니다. 꼭 거창한 방식으로 블록 다이어그램을 만들지 않아도 됩니다. 개인 작업할 때 무료로도 많은 기능을 활용할 수 있는 Boardmix를 블록 다이어그램 툴로 적절히 사용해보시는 걸 추천드립니다.