Ardublock: GRAPHICAL PROGRAMMING LANGUAGE FOR ARDUINO

Lego Crane

Thanks to projects like Code.org and MIT Scratch, students can encounter ideas from computer science using rich puzzle interfaces. Using these puzzle interfaces, students grow their skills of creativity and critical thinking while building something fun. Puzzle based programming interfaces put emphasis on the student learning sequencing, loops, and connecting appropriate pieces together. In this post, I wanted to share my experiences with Ardublock, a puzzle based programming interface for the Arduino platform. Using the most recent beta of Ardublock, I found that I could create an Arduino program to control motors quickly. I’m looking forward to seeing how students in our makerspace will enjoy the software.

The Arduino platform enables makers and students to program experiences involving electronics or sketches. You can learn more about this platform from the following blog post. In our previous blog post, we used Arduino, Lego’s, and a few servo motor’s to create a small toy crane. In this sketch, the user can move the crane by sending a character to the Arduino through the serial monitor.

  • w – moves the crane up.
  • s – stops the crane.
  • x – moves the crane down.
  • a – moves the crane left.
  • d – moves the crane right.

In the crane setup, pin 9 of the Arduino is connected to a standard servo. Pin 9 will be used to move the crane left and right. Pin 10 will be used to move the crane up and down. We initialize our variable for the direction or angle of the crane. We also send an angle of 90 degrees to both servo motors to ensure that the motors stop moving.

Ardublock setup

 

In the Arduino platform, the programmer needs to define a main loop of functionality.   In the crane control program, we start the process by accepting a character from the serial port and storing the character in a variable called “input.”   If we receive the character ‘d’ for move left, then the system changes the angle variable and writes the angle to the servo motor.  You can see the Ardublock code below.   The character ‘a’ for move right operates in a similar manner.    When we receive the characters x and w to move up and down, we write an appropriate value to the continuous rotation servo.   (0 = move up, 180 = move down)

Ardublock main loop

When using Ardublock, the student is not hidden from the C code generated by the tool.  The student can be encouraged to change the C code.  I see this as a nice learning advantage.   I want our students to make the connection between puzzle pieces and traditional code.

If you’re interested in learning more about this free and open source product, check out the following link:

http://blog.ardublock.com/engetting-started-ardublockzhardublock/

Top Stories on InspiredToEducate.NET

Learning To Code

Science Education

 

 

Sonic-PI: Sound synth application for learning coding and music

Sonic PI

I love it when I find a tool that combines my two favorite hobbies: music and computers. A gifted programmer named Sam Aaron has created an engaging tool for teaching music and code to makers young and old entitled Sonic-Pi. The tool delightfully blends an introduction to Ruby programming and concepts of music through written tutorials and a real time coding area. The tool can be used on a Raspberry-PI, Windows, or Mac.

Make sure to check out the introduction video on the front page of the Sonic-Pi website.

I liked how the Sonic-Pi tutorials decomposed the concepts of sound, loops, pitches, and music. I like that the tutorials progress from simple to complex ideas. Since music, R&B, and techno have loops and repetitions, students encounter natural introductions to the coding concepts of sequencing commands and repeating them.

During high school, my mother and I were looking for “mother/son” activities. We decided to take a course in cocktail piano together at a local college. It was great fun! In the course, we learned how to improvise piano pieces based on a melody line a chords.   The secret of most jazz musicians is that much of their creative thinking combines heart, physical execution and a kind of mathematical theory we call music theory. I’m not an expert in this subject, but it’s very fun.   It has enabled me to learn how to arrange music, basic scores, and improvise with groups.   You can think of it as the “math” or patterns that exists behind music. I think the Sonic-Pi tutorials do a good job of introducing the music theory concepts and code for ideas like scales, chords, rests, and the various timing ideas of music.

So, what does Sonic-PI code look like? Here’s my first program:


in_thread do
loop do
play_chord chord(:a, :minor)
sleep 2
play_chord chord(:g)
sleep 2
play_chord chord(:f)
sleep 2
play_chord chord(:e)
sleep 2
end
end
in_thread do
loop do
sample :drum_bass_hard
sleep 1
sample :drum_snare_hard
sleep 1
end
end

in_thread do
loop do
sample :drum_tom_hi_soft
sleep 0.5
sample :drum_cymbal_closed
sleep 0.5
end
end
loop do
play choose(scale(:a, :minor_pentatonic, num_octaves: 1))
sleep choose([1,0.25])
end

Here’s the break down; In the following code, we play the following chord progression: AM, G, F, E. The chord changes every two beats.


play_chord chord(:a, :minor)
sleep 2
play_chord chord(:g)
sleep 2
play_chord chord(:f)
sleep 2
play_chord chord(:e)
sleep 2

Since we want our chord progression to repeat itself, we wrap the chord progression in a loop. We also wrap it in an “in_thread” code block so that this progression can be executed in parallel with other musical ideas.

in_thread do
loop do
play_chord chord(:a, :minor)
sleep 2
play_chord chord(:g)
sleep 2
play_chord chord(:f)
sleep 2
play_chord chord(:e)
sleep 2
end
end

This small musical piece has a drum track executing in the loop. The following code executes a bass drum on beat 1 and a snare drum on beat 3. We put this musical idea in a loop and a thread so this idea can run in parallel with other ideas.


in_thread do
loop do
sample :drum_bass_hard
sleep 1
sample :drum_snare_hard
sleep 1
end
end

In the final element of code, I wrote a few lines to randomly generate a melody based on an A minor pentatonic scale. The “scale” function generates a set of notes included in the pentatonic scale. The “choose” function selects one of those notes at random. The program will hold the note from 1 beat or an eight note.


loop do
play choose(scale(:a, :minor_pentatonic, num_octaves: 1))
sleep choose([1,0.25])
end

I’m looking forward to trying this out with older middle school students or high school students. I know some “big kids” who will enjoy this as well. Hope you enjoy Sonic-Pi! Send us links to your songs if you make anything cool!

 

 

Top Stories on InspiredToEducate.NET

Learning To Code

Science Education

 

Join the Spark Macon Maker Space Community on Facebook

Photo credit : https://www.flickr.com/photos/dougbelshaw/

 

Celebrating Community Learning at SparkMacon MakerSpace

Christmas Ornament Making

On our blog InspiredToEducate.NET, we have reflected on the benefits of learning by making.   It has been fun putting project based learning ideas into action at our new makerspace.   Our team has been given the opportunity to implement project based learning experiences in community meetups.   Our team has completed some informal reflection upon community events so far with the hopes of improving our guest experience.  I wanted to share a few celebrations and ideas we’re considering to make things better.

What’s going well?

  • We are very excited that we’re attracting a variety of makers.    For background, our “open make” night is scheduled the first friday of every month and open to the public.   This event gives our makerspace the opportunity to serve the public at large.  During our first events, our makers have included arduino builders, coders, boot painters, cosplay crafters, artists, lego fans, musicians, and wood workers.   It was neat to see young makers working right beside the adults.

  • One of our key dreams for SparkMacon is that we inspire the next generation of engineers, scientists and artists.  It has been cool to see families bring their kids to the events.   Inspired by the Maker Kids Makerspace and ClubHouse Augusta, our team has been working to make sure young makers feel at home.   The kids seem to enjoy the 3D modeling activities with TinkerCAD and building stuff with Lego Wedo.   During our last open make night, we experimented with building Minecraft worlds using TinkerCAD and MCEdit.
  • I’m really pleased that my wife enjoyed getting to meet other maker families in Macon.   I know that I appreciate getting to make new friends too.  It does give me a feeling of satisfaction knowing that we’re helping to grow positive relationships through these events.   Who knows what the impact of these relationships will be five years from now?
  • It has been cool to see students teaching students.   One of the older kids that attended the open make nights has been showing the younger students how he accomplished certain things in TinkerCAD.   I also caught him showing off his “hour of code” games to his young friends.   I hope we can grow this trend in our young makers programs.  I’m looking forward to seeing our students helping other students to learn and grow.
  • The people who have tried the “hour of code” materials from code.org have really enjoyed themselves.   I got to see one of our young makers enjoying the process of building flappy birds.   Since our first open make night, I have been told that this young man has been asking more questions about learning to code.   (Way cool!!)   We’ve had a few adults show interest in the material too.  I’m looking forward to seeing us do more “learn to code” events in January.
  • Our leadership team at SparkMacon could not pull off these events alone.   It takes a lot of effort to properly market, organize, plan execute, setup and teardown events.  In our early stages, I’m thankful for our SparkMacon members who have volunteered their precious time and effort to make the space functional and welcoming to our community.

In a future blog post, I will try to reflect upon how we plan to improve our community events.

 

Top Stories on InspiredToEducate.NET

Learning To Code

Science Education

 

Join the Spark Macon Maker Space Community on Facebook

 

Open Make Night at SparkMacon – Dec 5th

 

OpenMakeNight

Join us Dec 5th from 5:30 pm to 9:00 pm.    You’re welcome to design and make anything!  We’ll also offer a workshop on building winter wonder lands using Minecraft and TinkerCAD.com, a music jam session, and a DIY Christmas ornament workspace. Hope to see you there!

 

Top Stories on InspiredToEducate.NET

Learning To Code

Science Education

 

Join the Spark Macon Maker Space Community on Facebook

Open Make Night at SparkMacon – Nov 7th

Open Make Night at SparkMacon

 

Top Stories on InspiredToEducate.NET

Learning To Code

Science Education

 

Join the Spark Macon Maker Space Community on Facebook

 

 

Georgia Kid’s STEM Day at the Museum of Aviation

Kids STEM DAY

To help inspire the next generation of scientists and technology professionals, the Museum of Aviation in Warner Robins organized the Georgia Kids STEM Day on 8/16/2014. It was a pleasure to see the museum education team and volunteers across middle Georgia come together to help kids from 2nd to 5th grade experience the fun and excitement of science, technology, engineering, creativity, and math.

I had the opportunity to attend the event this past weekend as a volunteer. The event attracted over 100 students.  I think everyone had a fun time tinkering, building, and experimenting. In one workshop, students engineered model rockets from paper, straws, and tape. It was neat to see their excitement launching their rockets into the sky. In another room, students learned lessons about electronics using Snap Circuits. In yet another space, students had the opportunity to tinker with robotics using Cubelets.

Thanks to the Museum of Aviation team for putting this event together.  It was so much fun!  You can learn more about this story at 13WMAZ  and Macon.com.

Our SparkMacon MakerSpace community was excited to support the Georgia Kids STEM Day. As a newly formed community, this was our first community service event. We had a blast! Two of my friends from Mercer Engineering Research Center helped kids invent cool musical art and crafts using MakeyMakey.

Mentors

The PiBot was a big hit with the young makers at the event. We loaded the robot with an obstacle avoidance program and let the kids “bounce” the robot across the conference area. For the curious students, one of our team members helped the kids make basic code changes to the Arduino robot. We were surprised to find a few 5th graders who felt very comfortable with editing and uploading C code. (I wasn’t doing C at 10 years old!)

PiBot

To help the kids get into 3D modeling and computer programming, we introduced the kids to ScriptCraft, TinkerCad, and 123D Sculpt.  Minecraft is always a hit with kids. Kids were empowered to build anything they could imagine. To enhance the building process, the kids were introduced to a few JavaScript commands to help automate large building tasks. One command automates the process of building a rectangular space of blocks. To learn more about ScriptCraft and Minecraft in Education, check out our review here.

ScriptCraft

Some of the students who visited us especially enjoyed blowing things up with “TNT” blocks. With this in mind, I taught them a few variations on JavaScript commands that would enable them to automate the distribution of “TNT” in the space. I never imagined that blowing things up could help motivate kids to code.  I think they learned about chain reactions from the activity too.

The Museum of Aviation provides a wealth of STEM events to kids, home schooling communities, and teachers through the year. Make sure to check out their website to learn more about their events, lesson plans and teaching resources (http://www.moaeducation.com )  To our community from Brent Lanford, Robert Betzel, Stephen Finney, Tanya, and Melissa, Thanks for volunteering and helping to inspire the kids.

 

 

Museum of Aviation 1

C-130 at Sunrise

 

 

Join the Spark Macon Maker Space Community on Facebook

Posts From InspiredToEducate.NET

3D Modeling with 123D Sculpt

123D Sculpt

For tinkers, artists, and students interested in 3D modeling, I wanted to share my review of 123D Sculpt by @AutoDesk.   At the time of this writing, you can only find this app on the iOS app store.   I find that I gravitate toward using my desktop computer for 3D modeling since the keyboard and mouse make me feel more productive and precise.   I, however, think that 123D Sculpt utilizes the user interface of the IPAD and touch well.  In the real world, you might start a sculpture with a lump of clay and mold it into a shape.   123D Sculpt enables you to start with a digital “lump of clay” and mold it into forms that you design.      Check out the video below to see how it works.

My favorite features…

  • Symmetry: I appreciate the symmetry feature in the tool.   123D Sculpt works well when you are creating something organic looking.  In nature, symmetry is everywhere!  The symmetry feature enables you to mold and paint one half of the object.   Your changes will be mirrored on the other side of the object.
  • Downloading model files: If you publish your 3D model to the community, you can download the model files for printing.   To learn more about this procedure, please refer to the following link.   In a future paid edition, I would imagine that AutoDesk will probably enable you to download your model without publishing to the community.
  • Kid friendly: I have let my kids make stuff with 123D sculpt.  Sometimes, they just like to move around the 3D model and color it.   Other times the kids surprise me with their own creations like space ships, dinosaurs, etc.
  • Textures: You can really improve a 3D model through textures.   The tool comes with a library of textures for eyes, fur, feathers, hair, faces, skin, and more.   You can also create your own textures using your photos.

I would like to see this app come to Android devices as well.   I think I would gladly pay for this app if it enabled me to export my 3D models without using the “community share” feature.

All in all, I think this is a fun way to introduce 3D modeling to makers.   Whether you’re young or old, you’ll find this tool engaging.  I can imagine this tool being used in video game design and 3d printing projects.

 

What sort of 3D Modeling do you enjoy doing?  What tools are you excited about?

 

 

 

Join the Spark Macon Maker Space Community on Facebook

Posts From InspiredToEducate.NET

Art and Tech Hacking Using Arduino – Meet up on July 29th

arduino

Massimo Banzi has started a movement. He invented a computer technology to teach his student artists and designers how to create simple electronics and prototype products in weeks. (not months) The Arduino has helped make electronics tinkering accessible to creatives young and old with a broad range of skill levels.   Since Banzi decided to share his innovation as open source, he has introduced a revolution in DIY electronics hacking. This technology has been celebrated by artists and technology professionals. Check out his story below:

Abstract: Massimo Banzi helped invent the Arduino, a tiny, easy-to-use open-source microcontroller that’s inspired thousands of people around the world to make the coolest things they can imagine — from toys to satellite gear. Because, as he says, “You don’t need anyone’s permission to make something great.”

If you’re interested in art and wearable tech, you might enjoy checking out the work of Becky Stern from Adafruit.   She has a really interesting job at Adafruit helping to review and promote textile materials and wearable Arduinos that can be used in costuming, fashion, or fun personal projects.   I discovered her through a recent edition of Make magazine.

Interested in learning more?

Join Mercer Google Developer Group for a fun evening of coffee, fellowship, and Arduino hacking. We’ll do a quick overview of the technology and various applications. We will be bring out Arduino devices so that you can tinker and experiment. I’ll probably bring out the Arduino robot too. (I finally got the distance sensor working!)

We hope to see you there!

Do you have any favorite Arduino projects or kits? Share a link below!

 

Join the Spark Macon Maker Space Community on Facebook

Posts From InspiredToEducate.NET

 

Photo Credit can be found here.

 

3 Tutorials on 3D Modeling with TinkerCAD.COM

Tinker CAD TARDIS

In the past, the world of 3D modeling belonged to engineers and designers.   Most 3D modeling software was hard to use and expensive.   The folks at TinkerCAD.com have created a delightful web based tool for artists, students, and creative technology professionals .   With this tool, you can start learning the basics of 3D modeling and print your creations using a personal 3D printer or a 3D printing service like Shapeways.com .

In our local maker community, I have started to receive requests for classes/tutorials on getting started with 3D printing and 3D modeling.   I have collected three helpful and brief tutorials to help you get started with TinkerCAD.com .  As I was reviewing this tool, I found the user experience and education materials very engaging and simple.

Benefits of TinkerCad.com:

  • TinkerCAD is free.  In order to use the tool, you need to use a WebGL enabled browser like Google Chrome or FireFox.
  • TinkerCAD has a feature to enable you to export your 3D models to Minecraft.   I haven’t tested this yet.   I, however, am looking forward to playing with this.
  • If you don’t have a 3D printer, you will appreciate that TinkerCAD integrates with services like Shapeways.com and Thingaverse.com enabling you to 3D print and promote your work.
  •  TinkerCAD has created a cool community of model builders and public models.    I was able to quickly find a Dr. Who “Tardis” and modify the model. (see picture above.)  The community feature enables you to learn how to construct complicated models by reviewing work from others.

TinkerCad is one solid option for getting started in 3D modeling.   If you’re looking for other options, check out this link from http://www.InventToLearn.com .

I hope you find these video tutorials helpful.


Abstract: This is a tutorial video that teaches you the basic functions of Tinkercad, a 3D design tool that runs in your browser.


Abstract: This is a tutorial video of how to import vectors into Tinkercad. Import .svg files to turn your 2D designs into 3D. Bring files from vector programs like Illustrator, Inkscape, etc.


Abstract: Teacher Liz Arum gives a demo of Tinkercad, a new browser-based 3D modeling environment. We then talk to her about some of the basics of 3D modeling. This is an archived clip from Make: Live, which was originally broadcasted on 9/28/11. Go to http://makezine.com/?live/? for information about the show, chat.

Please note that this last video is a few years old.   I, however, wanted to include it since Liz Arum provides an important educational perspective to the TinkerCAD tool.   Liz uses this tool to teach physical fabrication and computing to her middle schoolers.   (Very cool!)   Since this video was created, the TinkerCAD user interface and features have been improved.   

If you end up making something cool in TinkerCAD, share a link to your creations below!!

Posts From InspiredToEducate.NET

#InventToLearn #ISTE2014 Workshop: Projects and Inspiration

inventToLearn

Inspiring and fun day of reflection, making and tinkering. Check out the project ideas, blog posts, and resources. Thanks Sylvia and Gary for the great day!  You guys are my inspiration.

 

 

Posts From InspiredToEducate.NET