블로그 내용이 확인이 안되내요.
전체 글
- 내가 쓴 글이 왜 않보이지 2022.04.29
- 테스트 2022.04.28
- 뉴턴의 무정한 세계 2019.09.16
- 2019.08.30 - 엄마의 생각 2019.08.30 1
- 연금술사 2013.11.28
- ★★ 윈스톰&캡티바 자가 복구 기능방법~!!!!! ★★ 2013.07.25
- ε-δ (입실론-델타) 논법 2012.08.21 1
- "날아가는 대포알을 어느 한 순간에 보면 움직이지 않지만, 운동을 나태내는 뭔가를 여전히 갖고 있다" 2012.08.20 1
- SI 단위계 2009.09.17
- [DSP] 마이크로 프로세스 모드 실행 하기 2009.08.27
- [프로젝트 관리] 개발 프로세스 2009.08.27
- [C/C++] CString Manager 2009.08.25
- MFC 가 아닌 프로젝트에서 CString 사용하기 2009.07.07
내가 쓴 글이 왜 않보이지
테스트
테스트
뉴턴의 무정한 세계
![]() |
|
@2020.03.13
지금에야 리뷰를 작성한다.
예전에는 외국서적이 퀄리티가 좋았다면, 최근 국내서적이 퀄리티가 더 좋은 경우를 많이 보고 있다.
이책도 위와 같은 경우로 처음부터 한글로 작성된 글이라 똑같은 퀄리티의 책일 경우 외국서적보다 직관적으로 다가오고 공감할 수 있다.
뉴턴의 무정한 세계는 뉴턴이후 과학기술의 발전이 산업 발전으로 이어지고 그로인해 발생한 국가별 빈부의 격차로 인해 우리가 일본에게 겪은 억울한 일을 다루고 있다.
이상이라는 사람을 그 전까지는 소설가 정도로 알고 있었지만, 이책을 통해 과학분야에서 한국의 뉴턴이라고 할 수있을 정도록 우수한 인재인 것을 알게 되었다.
그리고, 그와 비교되는 일본의 과학자와 어떻게 다른 삶을 살게 되었는지를 통해 식민지가 우리 민족에게 얼마나 불행한 일이 였는지를 생각하게 되었다.
한사람은 철저한 일본의 억압으로 길거리에서 객사를 할때 다른 한사람을 노벨상을 수상한 것은 정말 극적인 대비로 한국과 일본의 해결되지 않은 문제가 지금까지 남아있을 수 밖에 없는 이유를 극적으로 보여준다.
총균쇠에서는 국가간 발전의 차이는 인종의 우성과 열성에서 오는게 아닌 지리적인 차이로 인해 발생하는 것이라 말하고 있다. 하지만, 뉴턴이후 과학의 발전으로 유럽의 국가들은 전세계 국가들을 식민지로 만들기 시작했다. 그 이후 자연스럽게 유럽의 민족은 우월하고 다른 민족은 미개하기 때문에 우월한 유럽 민족이 지배해야 한다는 당위성을 만들어가기 시작했다.
아시아에서는 일본이 이러한 선진 문명을 빠르게 받아 들이고 그들과 똑같은 논리로 다른 아시아의 국가들을 핍박하기 시작했고 민족주의 야망을 전세계로 확장하여 세계 2차 대전에 원인을 제공하는 크나큰 잘못을 하게 된다.
과학을 통해 기술이 발전하고 그러한 기술을 전쟁에 사용하는 것이 한때 전세계에 유행처럼 번지면서 전쟁이 더욱도 잔혹하게 변해 갔다. 지금은 예전과 같은 대규모 전쟁은 없지만 아직도 많은 지역에서 소규모 분쟁이 지속적으로 발생하고 있고 많은 사람들이 죽어가고 있다.
이유가 어찌 됬던 일본의 식민지 시절과 같은 굴욕을 다시는 일어나지 않게 하기 위해서는 국가의 경쟁력 확보가 필요하고 이를 위해서는 과학이 발전하고 기술의 선진국이 되어야 한다. 이러한 기술을 잘 활용하기 위해서는 절재되고 합리적인 생각을 할 수 있도록 민족성도 같이 진보해야 한다.
이책을 통해 슬픈 우리나라 과학기술의 발전 과정을 알게 되었고 과학기술을 배워야 하는 이유를 다시한번 확인하였다.
2019.08.30 - 엄마의 생각
연금술사
일시 : 2013.11.27 ~ 2013.11.28
장소 : 집(크레마 샤인)
지금 시작하는 인문학을 보다 프로이트의 수제자인 칼 융(Carl Gustav Jung)에 대해 알게 되었고, 파울로의 연금술사가 융 의 생각을 잘 담아낸 책이라는 글귀를 보고 읽기 시작했다.
융은 과학을 내세우는 많은 심리학자들과는 달리 원형1(archetype), 집단 무의식2(collective unconsiciousness) 과 같은 다소 비과학적이고 영적인 것까지 추구했다.
융의 이론은 그림자란 개념으로 이해할 수 있다. 그림자란 우리 자신이 인정하기 힘든 인격의 다른 측면을 말한다. 그림자는 서로 양극에 있으면서도 균형을 이루고 이루는데, 우리가 볼 때는 열등하거나 야만적으로 보이는 어두운 면이다. 우리가 이유 없이 어떤 사람을 싫어하게 되는 경우, 그 사람이 바로 자신의 그림자를 보여주고 있기 때문이라고 한다. 융은 그림자를 나쁜 것으로 외면하기보다, 자신의 일부분으로 적절하게 받아들임으로써 자아와 무의식이 통합될 수 있다고 말한다.
융이 말한 '자기실현' 이란 무엇인가?
자아(ego)가 이드(id)와 초자아(super ego) 사이에서 이를 조정하는 의식이라면, 자기(self)는 의식 또는 자아와 집단 무의식까지를 포함한 무의식 전부를 통합하는 핵심을 말한다. 자기의 모습을 찾아가는 것이 자기실현으로, 인간의 삶은 바로 자기를 실현해나가는 과정이라는 것이다.
이러한 융의 생각들을 가장 유사하게 담아낸 책이, 파울로 코엘료의 '연금술사' 이다.
본 책은 스페인의 양치기 산티아고의 '자아의 신화'를 쫓는 얘기를 연금술사라는 캐릭터를 이용하여 풀어 내고 있다.
책을 덮는 순간 왜 이책이 가장 많은 나라의 언어로 번역된 책인지를 알게 되었다.
★★ 윈스톰&캡티바 자가 복구 기능방법~!!!!! ★★
정비 사업소가 아닌 일반 카센터나 스피드 메이트에서 엔진오일 교환후 주행중
계기판에 경고등이 뜰경우 지우는 방법을 알려 드립니다
(엔진 오일교환후 리셋을 시키지 않으면 엔진오일 라이프 시스템이 작동되질 않아서 경고등이 뜸)
자가 해결 방법
엔진이 시동이 꺼진 상태에서 점화 스위치 "ON"위치로 돌리세요
5초 이내에 가속페달을 최대한 밟아다 놓았다를 3회 반복하세요ㅎㅎ
점화 스위치를 "LOCK" 위치에 놓으세요 그럼 경고등이 사라집니다
참 쉽죠잉~~
운전석 파워 윈도우 자동으로 "UP"기능이 갑자기 안될경우 복구방법
자가 해결 방법
자동 다운하신후 다시 업을 손으로 끝까지 닫힐때까지 스위치를 당기시고 닫힌후 약 10초간
당긴 상태로 계속 대기....시간이 지난후 스위치를 놓아줍니다 그이후 다시 작동해 보세요
정상적으로 작동 할겁니다
썬루프가 완전히 닫히지 않을경우 자가 복구 방법
자가 해결 방법
1,시동을 걸어줍니다
2,썬루프를 위로 완전히 열어줍니다
3,다시 한번 위로 완전히 열린지 다시한번 확인합니다
4,(열린상태에서) 위로 여는 스위치를 10초간 눌려주세요 (썬루프쪽에서 "뚝"하는 소리가 납니다)
5,시동을 OFF 시킨후 썬루프로 들어가는 전원을 완전히 차단 시켜줍니다
6,잠시후 다시 시동을 걸어 정상적으로 썬루프가 닫히는지 확인을 합니다 (이후 정상적으로 닫힘)
이모빌 라이져 키 추가시 자가 셋팅 방법
차량 인수시 받은 키 2개를 준비합니다(사업소에서 덤으로 셋팅 추가한 키가 있다면 반드시 준비하세요)
사업소에선 돈받고 해줍니다 참고하세요
자가 셋팅 방법
1,리모컨 키를 꼽고 ON 까지 돌렸다 모든 계기 경고등이 꺼지면 키를 뺍니다
2,서브키를(두번째키) 꼽고 ON 까지 돌렸다 모든 계기 경고등이 꺼지면 뺍니다
3,추가 셋팅 하고자 하는 키를 ON 까지 돌렸다 모든 계기 경고등이 꺼지면 뺍니다
이렇게 하면 새로운 키에 이모빌라이져 셋팅은 끝이 납니다..
시동 테스트..
시동 테스트 시에는 혹시 모를 불상사를 막기 위해 사용하시던 키로 시동을 겁니다
시동에 이상이 없다면 시동을 끄고 새로 추가 셋팅한 키로 시동을 걸어보세요
이상이 없이 셋팅이 되었다면 시동이 잘 걸릴 겁니다
문제가 있다면 락해제까지 2시간을 기다려야 합니다....ㅎㅎㅎ
정비소가 아주 멀거나 왔다 갔다가기 귀찮거나 시간이 안되는분들은 시도하세요
이상 윈스톰&캡티바 자가 복구 기능방법에 대해 이엑살이 알려드렸습니다
ε-δ (입실론-델타) 논법
고등학교 수학과정 중 가장 미흡하게 소개된 개념을 꼽으라면 단연 극한이라고 할 수 있다.
고등학교 과정에서 극한의 개념은 매우 모호하다.
- 고등학교 과정에서 극한의 정의 -
항수 f(x) 에서 x -> a 로 한없이 가까워질때, f(x) 의 값이 일정한 값 f(a) 에 한없이 가까워지면 함수 f(x)는 f(a) 에 수렴한다고 한다. 이 때, f(a) 을 x->a 일 때 함수 f(x)의 극한값 또는 극한이라 한다.
이해 되는가? 당연히 이해는 될것이다. 하지만, 한없이 가까워진다는 것이 대체 무엇인지 논리적으로 설명이 가능한가?
이를 위해 등장한 것이 ε-δ (입실론-델타) 논법이다.
본 논법은 독일의 수학자 K-바이어슈트라수가 최초로 정립한 극한의 정의법이다.
- ε-δ 대수적 정의 -
모든 ε>0 에 대해, |x-a|<δ 이면 |f(x)-f(a)|<ε 이 되는 δ가 존재한다. -> 개념을 공간에 그려보기 바란다.
내가 어떤 ε 을 정한다고 해도, |x-a|<δ 이면서 |f(x)-f(a)|<ε 이 성립하는 δ가 존재 한다는 것을 보일 수 있다면, 이를 이용하여 극한을 구할 수 있다는 것을 증명한 것이다.
즉, 어떤 함수에 δ 보다 작은 차이를 가지는 입력이 들어가면 그 출력은 ε 보다 작은 차이를 가지며, 두 함수는 거의 비슷하지만, 같지 않다. -> 아주 중요한 개념이다.
* 고대 그리스의 엘레학파의 제논이 제기한 의문을 해결하는 단초가 되는 개념으로 현재 21세기를 만들어낸 것이기도 하다.
한국말인데 영어 처럼 들리는가? 천천히 생각해보자, 의외로 쉽다.
다시 본론으로 돌아가 ε-δ 에 대하여 설명을 해보자.
* |x-a|<δ
-> x 가 (a-δ, a+δ) 구간에 있는 것을 의미
* |f(x)-f(a)|<ε
-> f(x) 가 (f(a)-ε, f(a)+ε) 구간에 있는 것을 의미
즉 x 가 (a-δ, a+δ) 구간에 있다면 f(x) 는 언제나 (f(a)-ε, f(a)+ε) 구간에 있어야 함을 의미한다.
f(x) 가 (f(a)-ε, f(a)+ε) 있다는 말은 ε 을 아무리 작게 만든다 하더라도, 임의의 δ 값을 조정하여 f(x)를 (f(a)-ε, f(a)+ε) 안에 넣을 수 있어야 한다는 것을 말한다.
"날아가는 대포알을 어느 한 순간에 보면 움직이지 않지만, 운동을 나태내는 뭔가를 여전히 갖고 있다"
무엇일까?
SI 단위계
질량 kgm 은 물체의 고유한 질량을 나타낸다. 질량이 1kgm 인 물체는 지구상 어디에 있어도 1kgm, 달나라에 있어도 1kgm, 심지어 무중령 상태에서도 1kgm 로 변함이 없습니다.
반면 무게(Weight)는 질량이 지구 중력에 의해 나타나는 힘을 말합니다. 즉, 무게는 키로그람중(kgf) 으로 1질량(kgm) 을 같는 물체에 9.8m/s^2 의 중력 가속도에 의해 발생하는 힘을 말합니다. (달의 중력 가속도는 대략 지구의 1/6로 1.6m/s^2 으로 생각할 수 있다.)
(2) 힘 = 질량 * 가속도
지구에서는 내 신체의 질량은 73kgm 이고 몸무게는 73kgf 이다. 73kgf 는 중력에 의해 나타나는 힘이므로 그 힘은 73 kgm * 9.8 m/s^2 = 715.4 N 이된다. 즉, Newton 의 단위는 kgm.m/s^2 이다. 쉽게 말해 1kgf 는 9.8N 이다.
다른 예를 들면 어떠한 물체에 1000 N 의 힘이 걸릴때 그 물체의 질량과 무게는 다음을 통해 알 수 있다.
1N 은 1kg * 9.8 m/s^2 이다. 이를 kg 의 식으로 풀면 1kg 은 1N / 9.8 m/s^2 이다. 즉, 1N 에 9,8 m/s^2 을 나누어 주면 질량과 무게를 알 수 있다.
1N 은 0.101 kgm 의 질량을 가지는 물체에 중력에 의해 발생되는 힘이다.
우리가 흔히 사용하는 F=ma 의 단위는 N 이다.
(3)일 = 힘 * (힘의 방향으로 이동한 거리)
W = F * S = (m * a) * S. 즉, 1N * 1m 가 일의 단위 1J 이다.
풀어서 말하면 1kg 의 질량을 1m/s^2 의 가속도로 1m 움직였을때 소요되는 일량(에너지)를 말한다. (1J = 0.239 cal, 1 cal = 4.184 J) 이다.
힘이 작용되지 않는 방향으로 이동한 것은 물리학에서 "일"로 취급하지 않는다.
(4) 공률(Power) = (일, 에너지) / (시간)
공률이라는 단위는 힘과 일 등으로 부터 유도된 단위로서, "새로 살 승용차는 Power 가 좋다." 이 말은 시간당 소모되는 에너지가 많다는 이야기가 되는 것이다. 즉, 기름이 많이 소모될 것이라는 의미이므로 차를 구입한 순간부터 기름값 걱정을 해야한다는 것을 말해준다.
어느 기계가 매 초당 1 Joule 의 일을 해 낼수 있는 경우 1 watt 의 파워가 있다고 한다.
즉, 1 watt = 1 Joule / sec
다시 정리하면
힘 [N] : kg * m/s^2
일 [J] : kg * m^2/s^2
힘 [W] : kg * m^2/s^3
이다.
시간의 3승이란 도대체 어떤 의미를 가지는가.???
다음의 문제를 풀어 보자
500kg 의 승강기를 30 m/s 의 속도로 상승시키기 위해서는 얼마의 Power[W] 가 필요한가.
-> 중력 방향으로 작용하는 힘은 500 * 9.8 = 4900 N 이다. 즉, 4900 N 의 힘을 주어야 엘리베이터를 공중에 잡고 있을 수 있다. 따라서, 30 m/s 의 속도록 이동시키면 4900 * 30 = 147kW 가 된다. (여기서 4900 N 의 힘으로 30 m/s 의 운동을 한 것으로 가정하고 나온 식인데 힘의 평형 상태에서 이동이 가능한지 여부는 생각을 해봐야 될 것같다.)
. 그러한 이유로 효율을 높이기 위해 전압을 높이고 상대적으로 전류를 낮춘다.
숫자로 보았을땐 둘의 전력이 같지만 실제로는 어떨지 생각해 보자.
ex)
\
1J 은 1N 의 힘으로 1m 만큼 움직이는 동안 하는 일 또는 에너지이다.
1J = 1Nm = 1kgm^2/s^2
1N 은 1kg 의 물체를 1m/s^2 의 가속도로 욺직일때 발생하는 힘이다.
1마력은 746W 에 해당한다.
70kg 의 사람이 3.5초에 3m 의 계단을 올라갈 때, 이 사람의 일률은 590W 또는 0.79 마력(HP) 이다.
[DSP] 마이크로 프로세스 모드 실행 하기
2812 의 메모리 맵
0x000000 ~ 0x3FFFFF 까지 긴 메모리 영역을 가지고 있다.
다음에서 3부분으로 나누어 설명한다.
고속 데이터 처리가 가능한 내부 램 메모리 영역
SARAM 영역
150MHz 동작을 그대로 지원하는 고속 램이 18K Work (2 byte * 18000 = 26 K byte) 이다.
M0 와 M1
24 계열 코드를 호환시키기 위해 탑제된 메모리로 24계열의 데이터 메모리를 대신한다. 24 계열의 Frash 영역의 크기와 같음을 알 수 있다 .
L0 와 L1
이 영역은 주로 데이터를 취급하는 용도로 쓰인다. 램 영역임에도 불구하고 코드 보안 기능이 적용 되어 있다.
H0
이 영역은 주로 코드를 다루는 데 쓰인다. 24 계열과 호환시킬 경우, 이 영역은 프로그램 메모리 영역으로 사용 된다. 28계열은 GPIO핀의 상태에 따라서 부트과정이 결정되는데, 이때 H0 영역에서 코드를 시작하는 부트 모드도 있다. 이는 많은 장점을 시사한다. 외부에 램을 장착할 필요가 없이 내부 램에서 바로 코드를 실어서 실행실킬 수 있기에 개발과정에서 많은 편리함을 얻을 수 있다.
코드 및 데이터 저장이 가능한 롬/플래시 영역
OTP
일종의 ROM 으로서 개발자가 딱 한번 구울 수 있는 메모리 영역이다. 사용자 정의 부트코드라든지, 중요한 시스템 상수 등을 저장할 수 있도록 고안된 메모리영역이다. '코드 보안' 기능으로 보호를 받는다.
FLASH 혹은 ROM
2812 와 1811 은 128K Word에 달하는 메모리를 탑제하고 있다. 2810은 64 K Word 의 메모리를 탑제하고 있다.
모두 '코드 보안' 기능을 적용 할 수 있다. 물리적 특성으로 150MHz로 구동되지 못한다. 시스템이 150MHz 로 구동 될 경우 1 사이클의 지연이 생기면 회로적으로 고정되어 있기에 개발자는 신경 쓸 필요가 없다. -> 무슨말???
Boot Rom 및 BROM
이 영역에는 각종 벡터들이 기본적으로 실려있다. 앞서 외부 메모리 영역을 다룰 때 살펴보았듯이 XMP/MC 핀에 의해서 비 활성화 될 수도 있으며, VMAP 비트에 의해서 벡터 영역이 M1 영역으로 옮겨질 수도 있다, 또한, ENPIE 비트에 의해서 확장 이동이 될 수도 있다. 이동 지역이 PF 영역이다.
MEMORY MAP 레지스터 영역
PF0, PF1, PF2 영역
PF는 Peripherals Frame 의 약자로 Peripherals 회로를 제어하는 각종레지스터들이 맵핑된 영역이다.
PF0 는 주로 메모리와 CPU 내부 제어와 관련된 레지스터가 맵핑 되어 있다.
PF1은 CAN 에 관련된 레지스터가 맵핑 되어 있다. CAN 만 별도로 맵핑한 이유는 28 계열에 주변회주 중에서 CAN 만 32 비트로 회로를 구성하고 있기 때문이다.
PF2 는 ADC, EV, SPI, SCI, McBSP 등등 각종 주변회로용 제어 레지스터가 맵핑되어있다.
[프로젝트 관리] 개발 프로세스
출처 [http://www.javajigi.net/pages/viewpage.action?pageId=219]
개발 프로세스에 대한 개인적인 생각
개발 프로세스라는 것은 프로젝트의 규모, 프로젝트에 참여하는 구성원들의 실력, 프로젝트 기간, 프로젝트 난이도, 고객의 성향에 따라서 적절하게 선택하는 것이 좋을 것으로 생각한다. 그러나 이 같은 상황에 적합한 개발 프로세스를 찾아서 정립하는 것이 가장 어려운 일이고 중요한 일이다. 굳이 하나의 정형화된 개발 프로세스를 고집할 것이 아니라 프로젝트이 성격에 따라 유연하게 변경해가면서 프로젝트를 진행하는 것이 좋을 것으로 생각된다.
그 만큼 하나의 프로젝트를 진행하는 것이 어려운 일이며, 성공을 위해 프로세스를 정립하는 것 또한 어려운 길이라 생각한다. 이 프로젝트에서는 그 동안 관심만 있었지 실 프로젝트에서 사용하지 못했던 테스트 주도 개발(Test Driven Development, 이하 TDD)을 바탕으로 프로젝트를 진행할 생각이다. 필자 또한 TDD를 경험해보지 못한 상황이기 때문에 TDD를 실행하면서 느끼는 부분들을 편하게 글로 적어나갈 생각이다.
개발 프로세스
모든 과정은 다음과 같은 순서로 반복적으로 진행하면서 하나의 기능을 추가해나갈 것이다. 하나의 기능을 추가하는 기간은 최대한 짧게 유지할 생각이며, 가능한 여러번 반복해서 기능을 향상 시킬 수 있도록 할 생각이다.
내가 생각하는 개발 프로세스는 다음과 같다.
- 프로젝트의 기능을 이해하기 위한 요구분석이 그 첫번째가 될 것이다.
- 요구분석을 통해 나온 기능 리스트들의 작은 단위로 분리하여 하나의 사이클 동안 개발 가능한 범위를 정한다.
- 도메인 모델을 설계한다. 도메인 모델 설계로부터 객체 모델 설계, 데이터 모델 설계를 나뉘어 설계를 진행한다.
- 하나의 작은 단위에 대한 세부 요구 분석 및 Use Case 기능 리스트 분석한다.
|
보통의 경우 고객 요구사항을 분석한 다음 UI에 해당하는 화면을 먼저 그린 다음 해당 화면으로부터 도메인 모델을 그리는 경우가 많다. 그러나 이 프로젝트에서 화면에 대한 고민은 개발 마지막 단계에서 고민할 생각이다. 먼저 고객 요구사항을 바탕으로 도메인 모델을 분석한 다음 Business Layer(Service Layer)를 구현한다. 모든 기능에 대한 시작은 Use Case 리스트로부터 시작하며, 이 기능 리스트를 구현하기 위하여 필요한 부분으로 확장해 나가도록 하겠다.
[C/C++] CString Manager
MFC 가 아닌 프로젝트에서 CString 사용하기
#include "atlstr.h" // using CString
위의 해더 파일을 Include 하면 사용할 수 있다.
* visual studio 2003 이후 버전 부터 가능 함.
