SUWANOチュートリアル
for Windows
さぁ君もスワーノを始めよう

1.はじめに

1-1.スワーノとは

スワーノは、「どうやってつくるか」ではなく「なにをつくるか」という『新しい時代のものづくり』を担う人々のための電子工作・プログラミング学習/制作環境です。入門からステップアップ、応用や試作まで幅広いものづくりに挑戦できる製品と仕組みを皆さんにお届けします人の数と等しい数のアイディアが存在し、そのアイディアを具現化するツールとしてスワーノが存在するのです。

このチュートリアルは、まずスワーノ単体で学習可能な範囲をガイドするものです。また基本的なステップを踏んでいくことで、言語の意味から使い方、発展、応用を身に付けられるようになっています。

※次のステップとしてスワーノの内容物に含まれないセンサやモータ等を駆使した事例や作例をご紹介します。センサやモータに関しては別途ご購入して頂く必要があります。その都度、購入ガイドをお知らせします。(秋月電子HPなど

1-2.主な機能・特徴

スワーノは「SUWANOCPUボード「SUWANO:スタートアップシールド」からなる一体型の学習用教材です。従来のマイコンボードは、抵抗やスイッチ、LED等の部品の選定をして電気回路図を理解し、ユニバーサル基板等への半田付け作業を行ってはじめてプログラミングを行なうというハード部分で敷居の高いものでした。基本的な入出力を備えたスワーノを使えば部品を揃えたり回路を組んだりしなくても、単体でLED点滅→ボタン操作→ブザー出力の学習を手っ取り早く行なうことが可能です。加えてサーボモータ、各種センサ類も接続可能な設計ですので初心者から上級者まで学習できる拡張性、汎用性の高い学習用マイコンボードなのです

1-3.スワーノの動作に最低限必要な環境

1.Windows:XP(SP3以上)、Vista、7が動作するPC(パソコン)

Mac:Mac OSX以上

Linux:32ビット、64ビット

※このテキストではWindowsを利用したセットアップ方法をご紹介します。

2.インターネットに接続できる環境

3.USBポート:1つ以上

1-4.準備する物

1.PC(パソコン

2.スワーノ本体(SUWANO:CPUボード、SUWANO:スタートアップシールド)

3.USBケーブル(miniBタイプ)

※BタイプやマイクロBタイプではありませんのでご注意下さい。なおマイクロBはミニBと似ていますが別タイプのため使用できません。

 

正)ミニBタイプ                                誤)マイクロBタイプ(ミニBより比べて端子が小さい

1-5.Arduinoアプリケーションについて

スワーノはイタリア生まれのマイコンボード/開発環境「Arduino(アルディーノ)」のクローンとして生まれました。そのためArduinoの開発環境をそのまま使うことができますし、Arduinoで作られた様々な作例をスワーノを使って試すこともできます。

現時点での最新バージョンは「Arduino 1.0」です

Arduinoダウンロードページ / Arduino 1.0 最新版(2012/02現在)

  1. プログラミングとは?(※フィジカル・コンピューティングではプログラムのことをスケッチという)

・コンピュータが処理するプログラムを作ることです。 プログラミングはプログラマーと呼ばれる、コンピュータプログラムを書く人によって書かれる文章です。

・コンピュータは人間と違って、言われた通りに言われた事しか出来ません。 コンピュータに対して「これをやったら、これをしろ」という事を延々と書くのがプログラミングです。

現在では、身近にある色々なものの中に誰かの書いたプログラムが入っています。 例えば、コンピュータ上でマウスを動かしているのも、コンピュータに絵を出しているのもプログラムです。

  1. フィジカル・コンピューティングとは?

・フィジカル・コンピューティング(Physical Computing)とはエレクトロニクスを使ってデザイナーやアーティストのために新しい素材を生み出します。

そのためにはセンサとアクチュエータを通じて人間と意思疎通する物体をデザインすることが必要です。

・マイクロ・コントローラ(マイコン)の中で動作するソフトウェアがその物体をコントロールすることになるでしょう。マイコンは1つのチップに集約された小さなコンピュータで「デザイナーなど、電気やソフトに詳しくない人が思った事を簡単に実現できる仕組み」を持ったマイコンだということす。

  1. C言語とは?

・C言語(しーげんご、C language)とは、コンピュータのソフトウェアを作る際に使用されるプログラミング言語の一種です。

・私達が日本語を話し、アメリカ人が英語を話すようにPC(パソコン)と会話する際に用いり世界共通言語です。また下記に登場する単語は英語ですので意味もイメージし易いのではないでしょうか?

  1. なぜC言語なの?

・B言語(びーげんご、B language)というプログラミング言語の後継として開発されたからです。Bの次なのでCという訳です。B言語はC言語が開発されたため、現在では使われていません。ただB言語の名前の由来は、はっきりしていません。

・C言語その物は言わば「ノコギリとカナヅチだけ入った道具箱」です。これだけでは作れるのはせいぜい犬小屋くらいでしょう。しかしこの道具箱は、ノミやカンナをはじめブルドーザやフォークリフトまで収納できる大きなもので、優れた道具と腕次第で超高層ビルだって作れるのです。

・上記に伴いC言語が出切る事は、コンピュータで可能なことが全て出来る、と言えます。WindowsのようなOS(※4-1)も作れますし、Internet Explorerのようなブラウザ(※4-2)も作れます。ゲームも作れますし、ロボットも作れます。WWWのサーバも作れますし、IP電話(※4-3)も作ることが出来ます。

※4-1 キーボード入力や画面出力といった入出力機能やディスクやメモリの管理など、多くのアプリケーションソフトから共通して利用される基本的な機能を提供し、コンピュータシステム全体を管理するソフトウェアのこと。

※4-2 インターネットをするためのソフトのこと。

※4-3 インターネットで利用されるパケット通信プロトコルのIP(Internet Protocol)を利用して提供される電話サービスのこと。

  1. Arduino(アルドゥイーノ)アプリケーションを使う理由とは?

・夢のような話ですが現実的に毎日使っているPCはC言語を使って作られた媒体です。しかしそれだけ膨大な知識を私達が身に付けるには今日明日でどうこうなる問題ではないことは確かです。

まずゼロ地点から一歩踏み出すという意味で、C言語を勉強する際に既存する最もメジャーなボードの1つにArduinoというボードがあります。イタリアで開発されたこのCPUボードは全世界で最も支持されているボードと言っても過言ではありません。使用するメリットとしては従来、とてつもなく膨大であったC言語のプログラムデータを一言二言の単語を書いてあげるだけで動作する点にあります。

・Arduinoはオープンソースとして設計図にあたるソースコードを、インターネットなどを通じて無償で公開し、誰でもそのソフトウェアの改良、再配布が行えるようにすることが可能であるためSUWANOはArduino開発環境を選定しました。

例えばサーボモータを動作させるためのプログラム関数は「Servo」。この関数と動かしたい角度、時間などをプログラムすることで簡単にサーボモータの制御が可能になります。しかしArduino IDEを使用しない場合は以下のようなプログラムを入力しなくてはサーボモータを制御することは出来ませんでした。

見ているだけで眠くなってしまいそうなデータ量です。上記のことから、SUWANOはArduinoに互換性を持たせ総合開発環境(IDE)を使用することで開発に伴う敷居を低くしました。またSUWANO専用ライブラリを用意することでより使い勝手のいい開発環境を実現していきます

http://suwano.jp/start

  1. SUWANOが動くまで

・SUWANOとは2つの基板で構成されています。1つはSUWANO CPUボードです。マイコンが実装されたボードであり、作品制作に使うハードウェア(※6-1)になります。もう1つは、SUWANO IDE(※6-2)です。これはソフトウェアを開発するための総合開発環境でボード上のマイコンに開発したソフトウェア(※6-3)を書き込む所までサポートしてくれます。

※6-1 コンピュータを構成している電子回路や周辺機器などの物理的実体のこと。

※6-2 総合開発環境のこと。またエディタ、コンパイラ、デバッガなど、プログラミングに必要なツールが一つのインターフェースで統合して扱えるような環境のこと。

※6-3 コンピュータを制御する手順・命令をまとめたものをソフトウェアのこと。(以下Arduinoアプリケーション)

例えばLEDを光らせるプログラムを書いたときSUWANOが実際に行う処理としては、

  1. プログラム(=スケッチ)をArduino言語で書く。

以下Arduinoアプリケーションが行う処理

  1. プログラムをArduino言語からC言語に変換する。
  2. C言語プログラムからELFファイル(※6-4)を生成する。
  3. ELFファイルからHEXファイル(※6-5)を生成する。
  4. HEXファイルの内容をマイコンに書き込む。

このことから従来、C言語をマイコンボードに書き込む際にも高い敷居があったといえます。

  1. LEDが点灯する。

※6-4 ELFとは「Executable and Linking Format」の略であり,Red Hatを始めとするLinuxディストリビューションの多くでは標準バイナリ形式として採用されているもの。

※6-5 正しくはIntel hexadecimal object file format specificationで規定された文法で記述されたファイル、とでもいうのでしょうか、通称"Intel HEX"ファイルと呼ばれるファイルです。メモリに書き込むべきデータを記入したファイルで、メモ帳などでも開けるテキストファイルです。

概要は以上です。次にSUWANO IDEを使用するための前準備を行います。