본문 바로가기
반응형

2017/09102

멀티탭 영어로 여러 전원 플러그를 연결하는 멀티탭을 영어로는 Power strip이라고 한다. Multitap은 비디오 게임기에서 다수의 게임 조종간을 확장할 수 있는 장치를 의미한다. Power strip의 다른 표현은 다음과 같다.Extension blockPower boardPower barPlug boardTrailing gangTrailing socketPlug barTrailer leadMulti-socketMultiple socketMultiple outletPolysocket 2017. 9. 23.
모터 스펙의 이해 자동차에 많이 사용하는 마부치(Mabuchi)의 DC 모터의 스펙은 다음과 같다. +24V를 인가하고 무부하(No Load)일 때 속도는 19600 RPM이고 전류는 0.22 A이다. 정격부하 만큼 부하가 증가할 때 속도는 16860 RPM로 감소 하고 전류는 1.35 A로 증가한다. 이 때 토크는 13.1 mNm이고 23.2 W를 출력한다. 정격부하에서 다음과 같이 전기적 입력 전력은 32.4 W이고 모터의 기계적인 출력은 23.1 W이다. 이 때 효율은 71.4%이다. 전기적 입력 전력 = 전압 x 전류 = 24 [V] x 1.35 [A] 기계적 출력 = 속도 x 토크 = 1765.6 [rad/s] x 0.0131 [Nm] = 23.1W 더욱 부하가 증가하여 토크가 93.8 mNm가 되면 모터는 멈추.. 2017. 9. 21.
제어용 모터 국내 제조사 쇼핑몰에 있는 모터는 대부분 저가 중국산이기 때문에 정확한 스펙이 없지만 국내 업체의 모터는 홈페이지에서 스펙을 구할 수 있다. 제어용 DC 모터, BLDC 모터, AC 모터와 기어를 생산하는 국내 업체는 다음과 같다. 1. 디엔지위드 2. GGM 3. DKM 4. SPG 5. MD 6. 티엠테크아이 2017. 9. 21.
웜 기어 웜 기어 (Worm Gear)는 웜 (Worm)과 웜 휠 (Worm Wheel)로 구성된다. Worm은 벌레, 애벌레라는 뜻이다. 웜 기어의 가장 큰 장점은 90도로 힘을 전달할 수 있는 것이다. 웜 기어 이외에 90도로 힘을 전달할 수 있는 기어는 베벨 기어 (Bevel Gear)이다. 웜 기어는 평기어(Spur Gear)에 비해 부피를 매우 작게 만들 수 있다. 작은 크기로 큰 기어비를 만들 수 있다. 소형 모터는 보통 고속/저토크이기 때문에 웜 기어를 많이 사용한다. 웜에서 웜 휠로는 힘이 쉽게 전달되지만 반대로는 힘이 잘 전달되지 않는다. 그래서, 모터의 전원이 꺼져도 Self-locking이 된다. 웜 기어는 효율이 매우 나쁘다. 어떤 모델은 20% 효율을 보이기도 한다. 2017. 9. 21.
PHP (Hypertext Preprocessor) PHP는 웹페이지에 사용하기 위해 개발된 언어로 웹페이지를 동적으로 동작할수 있도록 해준다. 웹페이지에 포함된 PHP는 웹 서버에서 번역되어 실행된다. 즉, 서버사이드 언어이다. Java, JavaScript, MS의 ASP.NET 등과 같은 용도로 사용된다. PHP는 1994년 Ramus Lerdorf에 의해 개발되었다. PHP는 웹에 주로 사용되지만 범용 프로그래밍 언어로도 사용할 수도 있다. PHP는 인터프리터 방식으로 동작하는 스크립트 언어이다. PHP는 페이스북에서 사용되고 JavaScript는 구글에서 많이 사용된다. 2017. 9. 20.
세마포어 (Semaphore) 란? 세마포어(Semaphore)는 수기 깃발이라는 뜻으로 프로세스에서 공유 자원에 접근하는데 사용하는 변수를 의미한다. 세마포어는 상호 배제를 위해 사용되는 방법 중 하나 이다. 다수의 공유 자원에 사용되는 counting semaphore와 1개의 공유 자원에 사용되는 binary semaphore가 있다. 세마포어는 V operation과 P operation을 실행하여 동작한다. 공유 자원에 접근하기 전에 먼저 P를 실행하고 공유 자원을 반납할 때 V를 실행한다. P와 V operation은 다음과 같다. # P operationP(S, I){ while(1) { if(S>=I) { S = S - I; break; } }} # V operationV(S, I){ S = S + I;} 공유 자원을 얻기 .. 2017. 9. 20.
상호 배제 알고리즘 - Peterson 알고리즘 상호 배제 (Mutual Exclusion)) 알고리즘인 Peterson 알고리즘은 다음과 같다. Process#1 Process#2 Flag1 = true; Turn = 1; while(Flag2==true && Turn==1) { // busy wait } // Start of Critical Section ... ... // End of Critical Section Flag1 = false; Flag2 = true; Turn = 0; while(Flag1==true && Turn==0) { // busy wait } // Start of Critical Section ... ... // End of Critical Section Flag2 = false; 위와 같은 Peterson 알고리즘은 2개.. 2017. 9. 20.
상호 배제 알고리즘 - Dekker 알고리즘 최초의 상호 배제 (Mutual Exclusion)) 알고리즘인 Dekker 알고리즘은 다음과 같다. Process#1 Process#2 Flag1 = true; while(Flag2) { if(turn!=0) { Flag1 = false; while(turn!=0) { // busy wait } Flag1 = true; } } // Start of Critical Section ... ... turn = 1; Flag1 = false; // End of Critical Section Flag2 = true; while(Flag1) { if(turn!=1) { Flag2 = false; while(turn!=1) { // busy wait } Flag2 = true; } } // Start of Crit.. 2017. 9. 19.
C# 스레드 실행하기 C#에서 스레드(Thread)를 실행시키기 위해서는 다음과 같이 코딩한다. private void button1_Click(object sender, EventArgs e){ MyThread = new Thread(MyThreadFunc); MyThread.Start();} System.Threading.Thread MyThread = null; public void MyThreadFunc(object Para){ [스레드 코드]} MyThread.Start() 실행 후 스레드가 종료될 때까지 대기하기 위해서는, MyThread.Start() 다음에 MyThread.Join()를 실행시킨다. 2017. 9. 19.
반응형