사실상.. 저는 거의 회사와서 인터넷 익스플로러 가지고 놀다가..
업무하려고 가장 먼저 띄우는 프로그램이기도 합니다.
다른 RE달아주신 분들의 말이 거의 답이라고 생각되며 자세한 것은 matlab창에서 simulink를 직접 typing하면 띄워지는 프로그램을 이리저리 사용해보면 알게 됩니다.
matlab의 경우 동역학적 방정식을 시뮬레이션하려면 보통 dx=f(x)의 형태로 된 프로그램을 작성한 다음 이것을 simulation 함수에서 call해서 사용하게 되고 이 function은 소위 integration algorithm을 이용해서 t = 0, T, 2T, 3T, 4T,... 에서의 각 time instant에서의 x값을 계산하게 됩니다. integration algorithm에는 euler algorithm같은 게 가장 간단하지만.. 여러가지 알고리즘이 있고 적용분야도 조금씩 다릅니다.
이것을 simulink에서는 block단위로 표시하게 되고, 예를 들어 적분을 해야 할 경우(dx -> x로 변환할 경우) 적분기 블럭을 사용하고, sum, multiply 및 각종 비선형 블럭을 지원합니다. 또한, 제어에서 사용하는 block 형태의 각종 블럭들을 지원하죠.. 유저는 이것들을 단지 연결해서 원하는 시스템의 형태로 만들면 됩니다.
에구 설명은 좀 어렵네요.. 하여튼, 이러한 방식으로 시스템의 모델링, 신호처리, 제어 등을 보다 직관적으로 표시할 수가 있게 됩니다. 요새는 이러한 형태로 시스템 모델링, 시스템 identification, 시스템 제어 에서부터 실시간 제어기의 코드 생성까지 한 툴(simulink)아래서 가능하게 하는 것이 자동차업계에 적용되어 가고 있는 추세이기도 합니다.
RCP(Rapid Control Prototyping) 이니 HILS(Hardware-in-the-loop simulation)이라는 용어도 나오고 있죠..