스탠포드 태양광 자동차 프로젝트 - 모든 것이 시작된 계기
어떻게 시작되었을까요
과제: 1년 안에 태양열 경주용 자동차를 설계하고 제작합니다.
스탠포드 태양광 자동차 프로젝트(SSCP)는 환경적으로 지속 가능한 기술과 위대한 도전에 대한 구성원들의 열정에 힘입어 추진되는 학생 운영의 비영리 단체입니다. 이 학생 팀은 2년마다 개최되는 호주 아웃백 횡단의 대륙간 경주인 월드 솔라 챌린지에서 태양광 자동차를 설계, 제작, 경주합니다. 자동차를 위한 모든 에너지는 태양에서 나오거나 자동차의 운동 에너지로부터 회수되어야 합니다. 태양광 자동차 팀들이 해결하는 가장 복잡한 문제들 중 하나는 전력 전자 장치로부터 최적의 효율을 얻는 것과 경주 동안 실시간으로 문제를 발견할 수 있도록 타이어, 어레이, 배터리, 서스펜션과 같은 시스템으로부터 실시간 데이터를 수집하는 것입니다.
2011년 경주에서 SSCP "Xenith" 자동차는 21개국의 37개 팀이 참가하여 동급 4위, 전체 11위를 차지했습니다. Xenith 자동차는 STMicroelectronics의 STM32® ARM® Cortex™-M MCU를 기반으로 하는 전기 시스템에 의해 제어됩니다. Xenith 전기 시스템에는 최대 전력점 추적기와 같은 복잡한 전력 전자 장치부터 휠 무선 압력 센서의 저전력에 이르기까지 약 20개의 하위 시스템이 포함되어 있습니다. 특히 SCCP의 구성원이 일반적으로 차량 작업을 하면서 점차적으로 지식을 쌓아가는 최소한의 엔지니어링 배경을 가진 학부생이라는 점을 고려하면 이 프로젝트는 어렵습니다. 그러나 프로젝트의 기간은 또 다른 키커입니다. "우리는 매우 짧은 시간 주기로 작업합니다."라고 컴퓨터 과학 4학년이자 프로젝트 엔지니어링 이사인 Gregory Hall이 말했습니다. "일단 규칙이 나오면 자동차를 설계하고 제작하는 데 1년도 채 걸리지 않습니다."
인프라 업그레이드 시 IAR Embedded Workbench로의 전환 포함
2011년 레이스가 끝나자 팀은 다음 Challenge를 앞두고 짧은 다운타임을 활용하여 인프라스트럭처를 업그레이드했습니다. 올해 팀은 IAR Embedded Workbench 컴파일러와 디버거 도구 모음으로 전환하여 2013년형 차량을 프로그래밍하고 2011년형 차량을 유지 관리했습니다. Hall은 팀이 IAR 시스템즈 개발 도구를 선택할 때 사용한 기준에 대해 설명했습니다. "여러분이 신경 쓰는 것은 도구 모음이 사용하기 쉽고 개발 속도가 정말 빠르다는 것입니다. 많은 도구 모음에 디버깅 모음이 있을 수 있지만, 일시 중지가 오래 지속되고 코드 섹션을 통과하는 데 5분이 아닌 한 시간이 걸린다면, 이는 큰 차이입니다." Hall은 IAR 시스템즈 개발 도구를 평가한 후, "우리는 정말 감명 깊었습니다. 우리는 사용하기 쉽고 디버그하기에 정말 빠른 안정적인 도구 모음을 원했습니다. IAR Embedded Workbench는 데스크톱 디버깅과 거의 비슷하거나, 적어도 임베디드 세계에서는 제가 찾은 것 중 가장 가까운 것입니다."라고 덧붙였습니다.
이렇게 빡빡한 설계 일정으로 인해 또 다른 중요한 기준은 설계 도구가 학습하기 쉬웠고, 여기서 IAR Embedded Workbench도 뛰어났다는 것이었습니다. Hall은 "시작 및 실행이 정말 빨랐습니다."라고 말했습니다. "원래 다운로드할 때부터 IAR Embedded Workbench에서 다른 도구 집합에서 프로젝트를 실행하고 디버깅할 때까지 약 1시간 45분이 걸렸습니다. 정말 단순하고 빨랐습니다."
IAR Systems 개발 도구 중 몇 가지가 특히 팀에게 유용했습니다. IAR Embedded Workbench 소프트웨어를 사용하면 코드의 printf 호출이 프로그래머를 거쳐 내장된 콘솔 창으로 연결되어 사용 가능한 가장 쉽고 가벼운 디버깅 도구 중 하나를 만들 수 있습니다. IAR Embedded Workbench는 SSCP에서 사용하는 실시간 운영 체제인 FreeRTOS에 대한 디버깅 지원도 제공합니다. FreeRTOS는 멀티스레딩 및 스레드 안전 대기열을 제공하여 팀이 코드를 더 깨끗하게 캡슐화하고 한 보드의 모듈을 자동차의 다른 보드에 통합할 수 있게 해줍니다. 이 기능의 장점은 디버깅이 훨씬 더 복잡해질 수 있다는 것입니다. 다행히 IAR Embedded Workbench는 실행 중인 스레드와 대기열의 상태를 모니터링하여 디버깅 뷰에서 해당 정보를 사용할 수 있게 해줍니다. 팀은 컴파일러 코드에 대한 도구의 경고에도 깊은 인상을 받았는데, 이는 팀이 테스트에서 놓친 문제와 이전에 사용된 컴파일러도 놓친 문제를 제기했습니다.
Hall은 또한 다른 많은 도구 공급업체들이 GCC 오픈 소스 컴파일러를 사용하지만, IAR 시스템즈는 내장형 개발을 위한 자체 컴파일러를 작성하는데, 이것은 실시간, 고신뢰성 또는 안전에 중요한 응용 프로그램에 사용되는 보다 엄격한 C 표준을 켤 수 있는 기능과 같은 귀중한 컴파일러 플래그를 제공한다고 언급했습니다. "우리는 때때로 그 코드의 일부를 작성하기 때문에 그것이 정말 유용하다는 것을 발견했습니다"라고 Hall은 설명했습니다. "그리고 그들의 컴파일러 성능은 더 우수하므로, 당신의 컴파일러가 당신을 위해 코드를 최적화하는 데 시간을 쓰지 않는 것이 좋습니다."
20개 이상의 서브시스템을 갖추고 있으며, 모두 STM32 계열의 마이크로컨트롤러를 기반으로 하는 IAR 시스템즈와 STMicroelectronics와의 긴밀한 협력 또한 팀이 선택한 도구 모음의 핵심 요소였습니다. SSCP 기존 하드웨어는 STM32 F1 칩을 사용하지만, 2013년 월드 솔라 챌린지에 출전하는 자동차는 STM32 F4 장치만 사용합니다. 팀은 IAR 시스템즈가 컴파일러를 롤아웃하고 새로운 칩을 지원하기 위한 업데이트를 등록하는 속도에 감명을 받았으며, 이는 이전 도구 공급업체가 업데이트에 응답하는 것보다 4~5개월 빨랐습니다.
팀원들이 배운 기술을 업계에 도입
1989년부터 Stanford Solar Car Project는 9세대에 걸쳐 수상 차량을 육성해 왔으며 SSCP를 졸업한 회원들은 Tesla Motors, Nanosolar, Inc. 등 오늘날 가장 첨단 기술 및 회사와 암 치료제 연구 및 소프트웨어 마케팅 등 다양한 분야에서 일하고 있습니다. 이 팀은 자동차 한 대만 생산하기 때문에 자동차 생산에 등장하기 훨씬 전부터 혁신적인 신기술을 자주 사용합니다. 예를 들어, 이 팀은 20년 넘게 탄소 섬유를 광범위하게 사용했으며 2000년대 초부터 생산 자동차에 등장하기 5년 이상 전부터 리튬 이온 배터리를 팩에 사용했습니다.
이전 팀원들은 SSCP와 함께 일하면서 처음 개발한 많은 기술을 활용합니다. 팀원들이 졸업하고 업계로 진출할 때 가장 광범위한 실리콘 및 운영 체제 공급업체에 대한 IAR Systems의 지원을 통해 플랫폼에 관계없이 이러한 경험을 활용하고 회사 프로젝트에 직접 적용할 수 있습니다.
IAR 시스템즈와 같은 업계 리더들의 지원으로 스탠포드 솔라카 프로젝트는 현재 이용 가능한 가장 혁신적인 기술들 중 일부에 접근하여 그들이 미래를 위한 솔루션을 개발할 수 있도록 도와줍니다. IAR Embedded Workbench에 대해 Hall은 "우리에게는 어려운 과제가 있지만, 지금 우리는 그것을 할 수 있는 최고의 도구들을 가지고 있습니다."라고 말합니다.