福野泰介の一日一創 - create every day

小学生から大人まで、はじめてのIchigoJamプログラミングワークショップの開催法、ついでに英語エディション資料!

2018/07/07
#KidsIT #IchigoJam #english #kosen 

小学1年生から中学生と保護者の方、国際高専1年生プログラミング部の4人までと幅広く、IchigoJamを使ったはじめてのプログラミングワークショップ。 年齢層幅広いワークショップのコツは、参加者の隣同士の年齢層を変えること。(今回の同年齢で固まっての開催を踏まえて)


金沢工大現役生に加え、金沢高専、木更津高専、弓削商船高専、福井高専卒のメンバーでサポート。 参加者同士でお互いにサポートしたり、思いもよらないアイデアに触れて驚いたりと、学びは多く、サポートスタッフは少なく開催できて、きっと一石二鳥!


パソコンを準備するところもワークショップのお楽しみのひとつ、あぁでもないこうでもないと友達と一緒に配線に悩むのもまた楽しい。


IchigoJamプログラミング、はじめのいっぽは「LED1」


アプリの基本、かわくだりゲームを改造して、オリジナルゲームができちゃいました!


ロボットの基本、サーボを電子工作してIchigoJamに接続して、サンプルプログラムを入力。

10 PWM 5,140:WAIT10 20 PWM 5,100:WAIT10 30 IF BTN()=0 CONT 40 GOTO10

ひげそりかな?


スライド slide (PDF / PowerPoint / KeyNote)
ついでに英語にも親しんじゃおうエディション!
フォントはこちら、手書き風フォント「こども丸ゴシック」IchigoJam フォント TrueType


手元資料 hansout (PDF / Word)
前のスライドが見えづらくても安心。
IchigoJam BASIC リファレンス、はじめのいっぽ、ミニゲームズ、IchigoJamプリントや、各種書籍もおすすめです!

会場、石川県白山市、白峰に今年オープン、国際高専。前回来たときは工事中だった、3on3バスケコートや、

ボルダリング場も完成してました!

ステキな環境、国際高専プログラミング部では、赤外線を使ったサバゲー機器を作ってるとのこと! 遊ぶところは自分で創る!ナイス、高専魂。

地域みんなで支える、2020年からの小学校プログラミング必修化。
人口1000人の白峰にできた、新風、国際高専とのコラボ、おもしろくなりそうです!
良い作品できたら、PCNこどもプロコン2018へ!

links
- 国際高専:国際高等専門学校
- Interview with new ICT Students / この春、国際高専に入学した新入生に聞きました|国際高専:国際高等専門学校
- 石川県白山麓で育むグローバルイノベーター、国際高専初訪問としゃべるIchigoJamくん

PCN Philippine Tarlac Started!

2018/06/17
#IchigoJam #KidsIT #english #philippine #movie 

At Philippine Tarlac. The new PCN will start here!

Thank you for join us!

This is the slide in English

"IoT Programming with IchigoJam"

links
links
- PCN: Programming for All Kids!
- IchigoJam’s creator Fukuno has evangelized programming at the Philippines! Started “PCN Philippine Turlac” with the local personal computer “MangoJam”! / IchigoJam生みの親、フィリピンにてプログラミング伝道!現地独自のパソコン「MangoJam」と共に「PCN Philippine ターラック」始動! – about yrm

My First Machine language - the simplest course of Arm machine language with IchigoJam step1

2018/01/25
#IchigoJam #KidsIT #Arm #rasppi #english 

Computers only know them binary machine language using just 0(off) and 1(on).
How do we make binary number sequence? It's depends on computers.


"RUN the Arm machine language on IchigoJam RPi after 1.2b16 (Raspberry Pi 2)"

The computer of IchigoJam understands 16 bit words (0 or 1 x 16).

0011000000000001

This machine language means to add 1 to R0 register. (resisters are kind of memories in the computer)

First 5 bit means "to add", next 3 bit means the resister number, last 8 bit means number to add.

00110 000 00000001

Let's write to RAM using POKE command of IchigoJam BASIC. (*IchigoJam BASIC reference ver 1.2)

POKE#700,`00000001,`00110000

#700 is position of RAM. Number starts with ` means binary number. (# for hexadecimal number)
To write last 8 bit in the first is a rule of this computer. (little-endian)

You need an other machine language word to work, "return" to IchigoJam BASIC.

0100011101110000

Write this word to RAM in the same way.

POKE#702,`01110000,`01000111

You are ready to run!

?USR(#700,1)

Did you get a number 2 as a right result?

USR command needs an start address of the machine languages and a number as a parameter.
Please check using 100 as a parameter.

?USR(#700,100)

Try to make to add 5 program using the machine language.

POKE#700,5 ?USR(#700,100)

You did it!

Speed is the greatest advantage of using the machine language.
The disadvantage is wrong machine language program doesn't protect your system.
So, please save before run if you make long program with machine language.

IchigoJam will stop if you write wrong machine languages.
Try to freeze your IchigoJam.

?USR(#704,0)

Computers work with some machine language words such them.
CPU of IchigoJam (LPC1114 Arm Cortex-M0) knows only 56 words Arm Thumb machine language.
It's very simple to understand!

If you use IchigoJam RPi after 1.2b16 (Raspberry Pi2/3 Arm Cortex-A7/A53), it knows more words.

It's a sample code to use SIMD(single instruction multiple data) machine language.
QADD8 can calculate 4 number as parallel during just 1 CPU cycle.

POKE#700,#80,#FA,#10,#F0,#70,#47 ?HEX$(USR(#700,#1234)) 2468

*It can calculate 8bit x 4 numbers but variables of IchigoJam BASIC are 16bit.

To be continued!

references
- Cortex-M0 Technical Reference Manual - Instruction set summary / ARM Information Center
- Cortex-A7 MPCore Technical Reference Manual - About the programmers model / ARM Information Center

links (now in Japanese)
- asm15 - simple Arm assembly language and machine language table
- asm15 assembler for IchigoJam
- series of "My First Arm Assembly language"

Live of NHK WORLD 'NEWSROOM TOKYO' 大安禅寺の生出演で話した鯖江モデル(日本語対訳)

2018/01/19
#sabae #opendata #maker #movie #doc #english 

NHK WORLD "NEWSROOM TOKYO" 生中継 from 大安禅寺!

福井、鯖江の紹介コーナーの後、ITのまち鯖江について英語インタビュー。


外には大きな中継車!


too funkyで、幻となった鯖江メガネ neoplug、IchigoJam x OLED エディション


番組内にはneoplug開発のBOSTON CLUB 小松原社長と共に登場!


ありがとうございました!中山さんカティーキャットさん(@DoitCosplaygirl)と!

世界中に放送された NHK WORLD NEWSROOM、NHK WORLDで録画も見られます。
Fukui: craftsmanship and beyond - NEWSROOM TOKYO - TV - NHK WORLD - English

Q: Why has Sabae been so successful in embracing new technology? What’s the key to its success?
なぜ鯖江市は新しい技術の取り組みがうまくいっている?

First of all, it is the mayor's decision to turn Sabae into an open-data city.
第一に市長の判断が鯖江をオープンデータシティに変えました。
Sabae is the first city in Japan to have done this.
鯖江市は日本初のオープンデータシティ。
And it's important to emphasize that citizens backed up this decision.
そして市民がそれをバックアップをしていることが重要です。
The city has many CEOs. People in Sabae are eager to revive their community.
鯖江市には社長がたくさん。鯖江の人々はまちの活性化にとても熱心です。
The number of shops is falling. Young people are moving elsewhere to find better jobs. Most of them don't return.
お店が減り、若い人は職を求めてよそへ行ってしまって戻ってこない。
Residents want to stop this.
市民はそんな流れを断ち切ろうとしています。
A citizens group started classes to make children and adults more familiar with programming.
市民の力で子供とシニア向けのプログラミング教室が始まりました。
And this spring, the city will launch programming clubs in all 15 elementary and junior high schools.
そしてこの春、鯖江市は市内のすべての小中学校15校でのプログラミングクラブ活動スタートさせます。
We believe all this could lead to the development of new apps using open-data.
これらすべてがオープンデータを使った新しいアプリケーションの実現へとつながります。

Q: What's the goal of the Sabae city?
鯖江市のゴールは?

Sabae is trying to create a model that will make everything revolve around information technology.
ITを活用し、すべてを進化させる鯖江モデルを創ろうとしています。
Our goal is to involve all residents and all local businesses in the management of their city.
私達のゴールはすべての市民、すべての地域企業が市の運営に関わることです。(市民主役)
...and to inject technology into traditional craftsmanship to revive local industry.
伝統的な産業にもITを融合させ地域経済の活性化を実現します。
70-thousand people live in our city, which is a good size to innovate.
鯖江市の人口は約7万人、イノベーションにちょうどいいサイズです。
People communicate with each other... no matter what their job is.
業種業界に関係なく、みんなで話し合えます。
With IT, every single citizen should be able to develop new ideas to improve the community and participate in decision-making.
ITを使えば、すべての市民がまちの意思決定、まちをよくするアイデアづくりに参加できます。
And eventually, this will lead the city to grow.
全員参加こそ、まちを成長させる最終型です。
Also, we hope to attract investment from Japan and abroad... and encourage people to live in Sabae.
国内はもちろん海外からの進出、移住も大歓迎です!

links
- Fukui: craftsmanship and beyond - NEWSROOM TOKYO - TV - NHK WORLD - English
- NEWSROOM TOKYO - TV - NHK WORLD - English
- 普通の眼鏡をスマートグラス化、スライド式着脱機構「neoplug」。鯖江ブランドを世界規格へ - Engadget 日本版
- データシティ鯖江ポータルサイト | Data City Sabae

Sabae will appear in the live of NHK WORLD TV broadcasting 'NEWSROOM TOKYO'

2018/01/18
#sabae #IchigoJam #maker #neoplug #english 

On Friday 19th, I'll appear in the live of NHK WORLD TV broadcasting(NHK国際放送) in "NEWSROOM TOKYO" program with neoplug "glasses for wearable". [20:00 - 20:45 (JST)]

IchigoJam x OLED x neoplug!


IchigoJam demo / see IchigoJam x OLED - IchigoJam BASIC & Arm Assembly Language.

1 GSB@INIT:GSB@LINIT:CLT 2 GSB@CLS:S="IchigoJam":FORI=0TOLEN(S)-1:X=3:Y=12-I:GSB@LC:C=ASC(S+I):GSB@LPUTC:NEXT 3 VIDEO0 20 X=RND(8):Y=RND(16):GSB@LC 22 IF TICK()>60*15 CLT:GOTO2 25 IF !(X<2 OR X>4 OR Y<3 OR Y>13) GOTO20 30 C=229+RND(27):C=RND(2)*C:GSB@LPUTC 40 GOTO20 100 @INIT:POKE#700,0,141,20,32,0,175:?I2CW(60,#700,6):RTN 110 @LC:POKE#700,0,33,Y*8,127,34,7-X,7:?I2CW(60,#700,7):RTN 120 @PUTC:COPY#700,C*8,8:?I2CW(60,#40,#700,8):RTN 130 @CLS:X=7:Y=0:GSB@LC:C=0:FORI=0TO127:GSB@PUTC:NEXT:RTN 150 @LPUTC:?USR(#800,C):?I2CW(60,64,#700,8):RTN 155 @LINIT:LET[0],#B5F0,#2307,#021B,#18C9,#2308,#4358,#1812,#2500,#2701,#2600,#2407,#2000,#5D93,#40EB,#403B,#40A3,#18C0,#3C01,#3601,#2E08,#D1F6,#5548,#3501,#2D08,#D1EF,#BDF0:RTN

We're judging programs of PCN Kid's Programming Contest 2017 Winter at SAMMIE'S in Fukui prefecture.
Thank you kids to send us many intresting programs!

(added 2019.1.19)
NHK WORLD NEWSROOM 2018.1.19 - YouTube (recorded)

"my interview scene and my talks"

IchigoJam RPi, a Third Party OS for Raspberry Pi can program the IchigoJam / Kids Coding 50th!

2017/12/04
#IchigoJam #KidsIT #rasppi #english 

A third party OS for Raspberry Pi "IchigoJam RPi" can connect and program the IchigoJam with LPC1114 via just 3 jumper wires.
ラズパイ用サードパーティーOS「IchigoJam RPi」はIchigoJamをジャンパーワイヤー3本で簡単につないで、プログラムできますよ!

Connect 3 wires after boot both IchigoJams. 起動してから3本つなぐ
1. RPi:6pin(GND) - IchigoJam:GND
2. RPi:8pin(TXD) - IchigoJam:RXD
3. RPi:10pin(RXD) - IchigoJam:TXD

Type followings on IchigoJam RPi つぎのように打つ

?"LED1

Your remote IchigoJam lighted! するとつないだIchigoJamが光る!


You can program also! プログラムもできちゃいます

?"1 LED1:WAIT10 ?"2 LED0:WAIT10 ?"3 GOTO 1 ?"RUN


Send #1B (=0x1b, code of ESC) to stop 止める時は#1Bを送信

?CHR$(#1B)

Unwire a wire if IchigoJam repeated errors. エラーがループしたらワイヤーを1本ぬく
You can change the no response mode "OK0" レスポンスなしモードは「OK0」

OK0

Make a VIDEO connector for Raspberry Pi Zero ビデオコネクターづくり

Just solder a 2P pin header and a composit connector
2Pピンヘッダーとコンポジットコネクターをはんだづけするだけ!


You can use the 4.3 inch mini monitor! 4.3インチのミニモニターが使えます!

How to use the IchigoJam RPi つかいかた
1. Download the OS, IchigoJam RPi (https://ichigojam.github.io/RPi/)

2. Write to SD 書き込み
3. Boot! 起動

You can find the "IchigoJam RPi" on the Raspberry Pi official DOWNLOADS page!
ラズパイ公式のダウンロードからも辿れます!

Enojoy programming and computing! プログラミングとコンピューティングを楽しもう!


photo 2016.12.11: Mr. Eben Upton(@EbenUpton), inventor of Raspberry Pi and inventor of IchigoJam! 「IchigoJam meets Raspberry Pi! Mr. Eben Upton's first IchigoJam BASIC program is...
We've released IchigoJam RPi with I-O DATA!
エベン氏と会って1年、アイ・オー・データ機器のイベントでついに IchigoJam RPi 発表!
Moblie Game Machine making workshop for Kids using IchigoJam RPi / I-O DATA FAIR 2017


photo from 「10 age kid who got PCN RaspberryPi award is creating a electric circuit with transistors as his own idea! Let’s spread Kids Programming! / PCNラズパイ賞を受賞した10歳の子は「最近はトランジスタが楽しい」と、オリジナルなモーター回路を設計中!IchigoJam RPi でますます広がる こどもプログラミング! – about yrm
Raspbery Pi Foundation supported our PCN Kids Programming Contest 2017 in Summer.
Thanks a lot!! ラズパイ財団からPCNこどもプロコンに特別協賛、感謝!


Today (4 December) is 50th anniversary of Kids Coding! なんと子供のコーディング50周年記念日!
Celebrating 50 years of Kids Coding


IchigoJam can connect Rwanda and us also. / IchigoJamがつないでくれたルワンダとの縁!
Programming for Rwandan kids! Open Teaching Materials

Programming for All Kids! - PCN / すべてのこどもたちにプログラミングするきっかけを!

鯖江で実稼働している公共交通IoT クラウドEXPOにてスペシャルセッション at さくらインターネットブース / PubTra-IoT Special Session in Cloud Expo 2017

2017/05/09
#IoT #opendata #IchigoJam #english 

クラウドの展示会、クラウドコンピューティングEXPO【春】のさくらインターネットブース、スペシャルセッションにて「sakura.io と IchigoJam でつくるバス公共交通IoTとオープンデータ」をテーマにトークセッション!(5/10水14:30〜)
We'll have a show at the booth of Sakura Internet in Cloud Computing Expo Spring!

こどもでも作れる簡単、高速、低消費電力IoTプログラミング環境でもある「IchigoJam」と月額60円からの4G通信モジュール「sakura.io」を使った、鯖江市営バスのシステム。 Code for Japan コーポレートフォローシップで誕生した、本システムの背景とを鯖江市役所の情報統括官で Code for Sabae のメンバー、本システムの共同開発者でもある牧田氏を交えて紹介。 更なる低価格IoTを実現するLoRaとこども起業家輩出を目指す企業連携プロジェクト「KidsVenture」が創る未来を、代表の高橋氏を交えて公開ディスカッション!
- Easy IoT Programming Environment "IchigoJam" x Just ¥61/month IoT "sakura.io"
- About Code for Japan Corporate Fellowship and this system with Mr. Makita CIO of Sabae city.
- How to make the future with Mr. Takahashi Leader of KidsVentrue.


"オープンデータ鯖江市つつじバスモニター / Sabae Tsutsuji Bus Monitor with opendata"

ブースでは、IchigoJam x sakura.io で動くシステムの予備機と鯖江で4月から運用されているバスのリアルタイム乗客数オープンデータを紹介。
だれでも作れる IoT ぜひ会場までお越しください!
We'll show the acutual IoT device and the demo page on web at the booth.
IoT for everyone! Welcome to the booth of Sakura Internet!


(運転手さんに実際使ってもらった実証時の写真)


Bus Graph / つつじバス乗客数グラフ@ja
(based on つつじバスなう)

links
- Code for Sabae 4周年!(スペシャルセッション講演資料)
- 「第8回 クラウド コンピューティング EXPO【春】」(東京)の弊社ブースにて、セッションを行います | さくらインターネット
- 福井県鯖江市、jig.jp、さくらインターネットが共同開発した「バス乗客リアルタイムオープンデータシステム」を鯖江市の公共バスで運用開始
- 鯖江市バスのリアルタイムオープンデータを使ったグラフアプリ
- - クラウド コンピューティング EXPO | リードエグジビションジャパン
- バス乗降数IoT実験、Code for Japan x Yahoo!Japan コーポレートフェローシップ in 鯖江

Armマシン語でつくる32bit大きな数計算ライブラリ / 32bit Integer Library on IchigoJam

2017/05/08
#IchigoJam #asm #english 

メモリが4KBしかないIchigoJam、節約のため変数はすべて16bit。低い限界を楽しめる設計です。 もちろんプログラミングでその限界は超えられます。今回はマシン語を使って超える方法の紹介。
How to exceed the 16bit limit of IchigoJam!

@CALC32 PUSH {LR,R4,R5,R6} R6=8 R6=R6<<8 R6=R1+R6 R5=#F<<2 R4=R0 R0=R4>>2 R0&=R5 R0=[R6+R0]L R1=R4<<2 R1&=R5 R1=[R6+R1]L R2=R4>>12 R2-0 ' plus IF !0 GOTO @SKIP1 R0=R0+R1 GOTO @END @SKIP1 R2-1 ' minus IF !0 GOTO @SKIP2 R0=R0-R1 GOTO @END @SKIP2 R2-2 ' multi IF !0 GOTO @SKIP3 R0*=R1 GOTO @END @SKIP3 R2-3 ' division IF !0 GOTO @SKIP4 PUSH {R4} GOSUB R3 POP {R4} GOTO @END @SKIP4 R2-4 ' division(remain) IF !0 GOTO @SKIP5 PUSH {R4} GOSUB R3 POP {R4} R0=R1 ' GOTO @END @SKIP5 @END R4=R4>>6 R4&=R5 [R6+R4]L=R0 POP {LR,R4,R5,R6}

"32bit calc library on asm15 (CALC32)"

マシン語呼び出しのパラメーターで、計算種類、配列位置で、結果格納、計算する数2つを指定します。32bit = 4byte なので、配列は[0]と[1]など、2つずつ使います。コンパイルした結果がこちら。

10 POKE#700,112,181,8,38,54,2,142,25,60,37,4,70,160,8,40,64,48,88,161,0,41,64,113,88,34,11,0,42,1,209,64,24,19,224,1,42,1,209,64,26 20 POKE#728,15,224,2,42,1,209,72,67,11,224,3,42,3,209,16,180,152,71,16,188,5,224,4,42,3,209,16,180,152,71,16,188,8,70,164,9,44,64,48,81 30 POKE#750,112,189 RUN

例えば、1234*5678 (=7006652)を計算するには、このように使います。

[0]=1234:[2]=5678 U=USR(#700,#2201):'[4]=[0]*[1] [6]=10000 ?DEC$(USR(#700,#3523),4)DEC$(USR(#700,#4423),4) 7006652

結果の表示上、9999万9999まで表示します。マイナスの数はどうなるか、やってみましょう! links
- IchigoJam
- マシン語でつくるプログラマブル学習リモコン
- レゴテクニックシリーズをIchigoJamと赤外線LEDで制御する(マシン語) / Control Lego Technic by IchigoJam and IR LED
- はじめてのマシン語 - IchigoJamではじめるArmマシン語その1

DMM 4K対応、プログラマブル学習リモコン by IchigoJam / Programmable IR receiver and sender

2017/05/07
#IchigoJam #maker #asm #english 

DMM.make 4Kディスプレイの入力切り替えが面倒なので、IchigoJamで学習リモコンを作ってみました。
I made programmable IR sender by IchigoJam.


ハードウェア設定 (hardware setup)
IR LED - OUT1
IR Reciever - IN1 (赤外線受光モジュール)

10 POKE#700,112,181,114,182,8,34,18,2,138,24,0,40,54,208,80,35,27,3,1,51,27,3,1,36,228,4,202,38,0,33,0,240,40,248,1,49,33,66,30,209 20 POKE#728,29,104,0,45,247,209,36,9,0,32,0,33,0,240,29,248,1,49,33,66,19,209,29,104,0,45,247,208,17,82,2,48,176,66,12,208,0,33,0,240 30 POKE#750,16,248,73,28,33,66,6,209,29,104,0,45,247,209,17,82,2,48,176,66,229,209,0,33,17,82,2,48,64,8,98,182,112,189,100,37,210,53,1,61 40 POKE#778,253,209,112,71,80,35,27,2,1,51,27,4,4,51,1,36,0,38,17,90,0,41,234,208,28,96,0,240,21,248,30,96,0,240,18,248,1,57,247,209 50 POKE#7A0,2,48,17,90,0,41,222,208,0,0,0,0,0,240,8,248,0,0,0,0,0,240,4,248,1,57,245,209,2,48,228,231,154,37,1,61,253,209,112,71 200 IF BTN()=0 CONT 210 A=#BF00 220 B=#E11E:GSB300:N=USR(#700,0):WAIT60 230 B=#E21D:GSB300:N=USR(#700,0):WAIT30 240 B=#BE41:GSB300:N=USR(#700,0) 250 GOTO200 300 LET[0],346,169 310 FORI=0TO15:[2+I*2]=25:[3+I*2]=18+43*(1<<I&A!=0):NEXT 320 FORI=0TO15:[34+I*2]=25:[35+I*2]=18+43*(1<<I&B!=0):NEXT 330 LET[66],25,0:RTN

配列に送信用のデータを作成(300行)し、マシン語(10-50行)で38kHzの赤外線LED点滅信号として送信。ボタンが押されたら、あらかじめ調べたコードを順番に送信。これでワンボタンで入力切り替えができます!アンプ連動やセンサーで自動でONとかにも!
It makes IR data on the array (line 300) and send via IR LED blinking. I did it just 1 pressing when switch the input!

こちらがリモコンコード受信用のプログラムです。上のプログラムを一度実行したあと、一度 NEW でプログラムを消して、下記を入れることで、送信&受信テストができます。
This is the IR code receiver program. You can get the code after run the abobe program, NEW command and enter this program.

100 INPUT"1:SEND 2:RECV ?",N 110 IF N=1 N=USR(#700,0):GOTO 100 120 N=USR(#700,1) 130 FOR I=0 TO N-1 STEP 2:?[I];" ";[I+1];" ";:NEXT:? 140 N=0:FORI=0TO15:N=N|([3+I*2]>37)<<I:NEXT:?HEX$(N) 150 N=0:FORI=0TO15:N=N|([35+I*2]>37)<<I:NEXT:?HEX$(N) 160 GOTO 100

家のリモコンで動くもの全部、IchigoJam BASIC プログラミング可能に!
You can program your all devices have a IR receiver by IchigoJam BASIC!

links
- IchigoJam
- レゴテクニックシリーズをIchigoJamと赤外線LEDで制御する(マシン語) / Control Lego Technic by IchigoJam and IR LED
- はじめてのマシン語 - IchigoJamではじめるArmマシン語その1

レゴテクニックシリーズをIchigoJamと赤外線LEDで制御する(マシン語) / Control Lego Technic by IchigoJam and IR LED

2017/05/06
#IchigoJam #KidsIT #maker #english 

こども大好きロボット、高かったり難しかったりと敷居が高いものをいかに下げるか?
How to lower hurdles about robots?

レゴ テクニックシリーズは、ロボットづくりの肝のひとつ、メカトロニクス版を電子工作でいうブレッドボードのように試行錯誤が自由自在! シンプルなサッカーロボなら10分ほどでつくれてしまいます。 オープンソースハードウェアでもある組立図を見ながらこんな大型クレーンや、ショベルカーまで!
Lego Technic series likes breadboard! It's easy to make everything!

レゴテクニックのマイコン制御!今回このレゴとIchigoJamをつなぎました!以前からマイコンに接続してネコのおもちゃや、iPhoneコントロールラジコンカーバスなどを作っていた頃のコードを再利用!
I connected Lego and IchigoJam using past codes.


こんなIchigoJamのプログラムで動かせます。付属されているリモコンと違って前後7段階に出力調整可能!
You can control the Lego with this program with selectable power 7 levels.

1 P=4 10 A=-P:B=P:GSB100:WAIT30 20 A=-P:B=0:GSB100:WAIT30 30 A=0:B=P:GSB100:WAIT30 40 A=P:B=P:GSB100:WAIT30 50 A=0:B=0:GSB100 99 END


ミニマムなロボットにして実験しましたが、2モーターx4チャンネル、最大8モーターまで制御可能!
This demo robot is very simple. But you can control up to 8 motors! (2 motors x 4ch)


赤外線LEDをGNDとOUT1に挿すだけでOKですが、トランジスタで増幅して飛距離アップ!
It's OK just put in IR-LED GND and OUT1. But a transistor enlarge the power!

こちら上記のプログラムを動かすためのマシン語とサブルーチン
This program drives a IR-LED to control Lego.

100 N=1<<14|C<<12|B&15<<8|A&15<<4 110 R=15^(N>>12)^(N>>8)^(N>>4)&15 120 IF PEEK(#700)!=112 GOSUB2000 130 ?USR(#700,N|R):RTN 2000 POKE#700,112,181,114,182,80,35,27,2,1,51,27,4,4,51,1,37,0,38,1,36,228,3,0,240,28,248,78,34,0,240,19,248,0,240,23,248,20,34,0,240 2010 POKE#728,14,248,32,66,2,208,22,34,0,240,9,248,100,8,243,209,0,240,11,248,78,34,0,240,2,248,98,182,112,189,0,181,0,240,14,248,1,58,251,209 2020 POKE#750,0,189,0,181,6,34,29,96,0,240,6,248,30,96,0,240,3,248,1,58,247,209,0,189,155,33,1,57,253,209,112,71 2030 RTN

IchigoJamで使うマシン語の勉強したくなったらこちらもどうぞ!
See also if you want to learn the machine language on IchigoJam.

"asm15 - Assembler for IchigoJam"
BoxHeadRoomさん作のIchigoJam用アセンブラを調整して、赤外線制御プログラムのアセンブルに対応しました。
I modified to assemble the code by BoxHeadRoom.

links
- PawerFunctionsの赤外線解析⑤・・・ - LEGOの機関車○●○ - Yahoo!ブログ
- IchigoJam 用アセンブラ - BoxHeadRoom 別館

Tweet
クリエイティブ・コモンズ・ライセンス
この作品は「Creative Commons — CC BY 4.0」の下に提供されています。
CC BY 福野泰介 - Taisuke Fukuno / @taisukef / high-res profile image