When working in DesignSpark Mechanical on a 3D model it can be awkward to click on certain faces depending on where they are on the model and which way you are viewing it. To cut down on manipulating the model there is a way of being able to select concealed faces. This video shows you how.
DesignSpark Mechanical Tutorials - Hidden Features Video
New products
Introducing the Pi 2!
有機ELディスプレイフルスクリーンカラーIS
NKKスイッチズは、有機EL搭載の押しボタンスイッチ「有機ELディスプレイフルスクリーンカラーIS」を発売いたしました。
有機ELディスプレイフルスクリーンカラーISは、表示部に、96X64ドットのカラー有機ELディスプレイを搭載した、押ボタンスイッチです。表示色は、65,536色で、文字だけでなく、写真や動画まで表示可能です。最大の特長は、表示部の額縁を極限まで細くして、複数個を同時に使って一つの大きなスクリーンとして使えることです。タッチパネルとの違いは、「押せるスクリーン」であることです。1.8mmの確かなストロークが確実な操作感を与えてくれます。
この有機ELディスプレイフルスクリーンカラーISを88個使用した「ピアノデモ機」を下記のURLで見ることができます。
その他、製品の詳しい情報については、下記のURLを参照ください。
https://www.nkkswitches.co.jp/is/fullscreenIS.cfm
Developing Applications for the Intel Edison
A walk through some of the different ways you can program the feature packed platform.
In a previous post I covered in brief how the Intel Edison can be programmed via the Arduino IDE, with other options including writing JavaScript and native C/C++ applications. This post explores those options in a little more detail and takes a look at the Intel strategy for peripheral device support.
Intel IoT Developer Kit
The Intel IoT Developer Kit is based upon the popular open source Eclipse IDE, and is bundled with C and C++ examples for the classic hello world, and LED blink — the hardware hello world.
C and C++ examples are also included for sending data to the Intel IoT Analytics cloud via the IoT Kit Agent, software which also runs locally on the Edison. This service allows for the collection, storage and analysis of sensor data, with the ability to configure alerts. Intel state this as being provided free for “limited non-commercial use”, so it may not be suitable for all applications.
There are also C++ examples for reading an analogue input, and driving an I2C LCD and a buzzer.
The IDE provides a Remote System Explorer view where the IP address and login details for a connected board are entered. Once configured this allows for remote execution and debugging of programs from within the IDE, with both Edison and Galileo boards being supported.
Application portability is provided courtesy of the MRAA library, which offers a consistent API across different hardware for GPIO, UARTs and buses such as I2C and SPI, performing board detection at runtime. In addition to Edison and Galileo, the library also includes support for the Minnowboard and Raspberry Pi Model B.
The UPM libraries then build upon MRAA to provide APIs for sensors and actuators. At the time of writing this includes numerous temperature, pressure, gas, light and magnetometer sensors, along with various displays, LED controllers and servos. A guide to writing new modules is also provided, along with an Arduino library porting example, and Intel invite third party contributions to UPM.
Arduino compatibility
The Intel variant of the Arduino IDE has the same familiar look and feel as the classic version, and all the basic example sketches are there along with a healthy selection of libraries. However, it's important to note that sketches compile down to a binary that then executes on Edison as a Linux process. There is no microcontroller. This is not a real-time system.
What does this mean? Well, sketches that use AVR-specific features will obviously need to be modified, and some may not even work at all. A good example of where issues may be encountered is sketches that toggle pins to drive wireless and infrared etc. links and bit-banged I/O. These typically disable processor interrupts by calling cli() or nointerrupts() before doing the timing critical toggling of pins, and then re-enable them immediately afterwards with sei() or interrupts().
In testing, Arduino AVR code that used cli() and sei() would compile after these function calls were removed. However, as one might predict, it was then found that the timing of data being sent over a wireless link was out and the receiver simply discarded it. Which is hardly surprising when you consider that Linux probably serviced plenty of interrupts during the transmission period.
That said, it may be that a trick was missed and that there is some soft real-time capability that can be used. Failing which, an update to the Edison software is planned which will enable the onboard independent Intel Quark core, and one can only hope that when this happens it will become possible to target Arduino applications to it, instead of a Linux process on the main Atom processor.
Bridging two worlds
Reusing existing Arduino code and then integrating it with applications running under the Linux system — where there are greater resources and many more tools available — seemed like an obvious thing to want to do. As such, I had hoped that there would be a simple facility whereby data could be exchanged between a sketch and some other Linux application.
However, it turns out that while this is possible, it requires a fair amount of setup, with memory mapped interprocess communication (IPC) and mutexes for synchronisation. Although this situation may easily change and it presumably wouldn't take a competent programmer very long at all to come up with Arduino and Linux (C, C++ and/or Python etc.) libraries that greatly simplify this.
Intel XDK IoT Edition
The Intel XDK IoT Edition allows applications to be developed in JavaScript, via the increasingly popular node.js runtime environment, and provides templates for things such as digital read/write, analogue read and — of course — LED blink!
The XDK also provides support for creating mobile applications that are built using HTML, CSS and JavaScript, via the Apache Cordova set of device APIs.
The two sides to XDK development neatly complementing each other, enabling both IoT device behaviour and companion mobile app logic to be defined using the same language and IDE.
As with the IoT Developer Kit, the MRAA and UPM libraries are used for compatibility across IoT devices.
Conclusion
With three official SDKs — four if you count building native applications via Yocto! — it can be a little confusing when you first start exploring the available options for developing for Edison. A matter that is not helped by the similar naming of the Intel IoT Developer Kit and Intel XDK IoT Edition. However, once you familiarise yourself with the differences and understand what each of these development environments brings, it all makes perfect sense and there should be options to suit most tastes and needs.
Despite the present limitations of Arduino development on Edison, it's still an incredibly useful tool, if for no other reason than in providing a gentle on-ramp for the platform. Which is not to say that it won't also be improved upon in due course.
Intel Edison Module - is availible from RS Components
Intel Edison Development Kit - is availible from RS Components
Intel Edison Breakout Kit - is availible from RS Components
名刺サイズのスパコン「Parallellaボード」登場
こちら(英文)の記事の翻訳になります。
Parallellaは、米国Adapteva社が提供するオープンな高速並列処理コンピュータボードです。制御用IC(デュアルコアARMとFPGAのワンチップ)と、演算用アクセラレーター(16コア、または64コア)を搭載した名刺サイズの基板型製品です。Parallellaボードには3タイプの製品があり、アプリケーションや用途によって使い分けができるのですが、それら3製品の違いを述べる前にまずParallellaの基本的な性能をご紹介します。
Parallel(la) の利点
Parallellaは1GB RAMのARM A9デュアルコアプロセッサを搭載しています。公式なOSはUbuntuをサポートしています。他のマイコンボードとの最大の違いは"Epiphany(エピファニー)"と呼ばれる16コアのアクセラレーターを持っている点です。このアクセラレータは非常に消費電力に優れており、64コア版のEpiphanyは50 GFLOPS/W(1ワットあたり50 GFLOPSの性能)(単精度)で、極めて高い電力効率を達成しています。消費電力はモバイル並なのに演算能力はハイエンドPC並です。インターフェース面ではUART・イーサネット・HDMI・MicroSDストレージを持っています。加えて非常に多くの高速GPIOを備えています。
要するに小型・低消費電力でありながら非常に高い計算能力とI/Oパフォーマンスを持っているということです。
Desktop版 Parallella
Prallella-16デスクトップヴァリアントはHDMIディスプレイとUSBキーボード・マウスを同時に使用することができ、スタンドアローンコンピューターとして動作します。ストレージとしてマイクロSDカードを使用し、ネットワークドライブやUSBドライブも使用することができます。Parallellaをディスプレイ用の組み込みアプリケーションシステムとして運用することで、開発・教育にかかるコストを低減することができます。
Embedded版 Parallella
一見デスクトップタイプと同じシステムに見えるかもしれません。しかし、SoCが、Zynq 7010 から Zynq 7020に変更されています。FPGAとしての違いは以下の通りです。
ロジックセル: 28K → 85K
- ブロックラム: 240KB → 560KB
DSPシリーズ: 80 → 220
GPIOピン: 24 → 48
この仕様であれば複雑な変調と高い能力を両立し、より大きなFPGA設計に対応することができます。
Micro-Server
デスクトップタイプと同様にZynq 7010を搭載しています。しかしよく見ているといくつかの部品の配置が変更されていることがわかるはずです。このタイプはネットワーク越しにアクセスされることを前提として作られているため、HDMI端子やUSB端子は除かれています。USBとHDMI持っていないだけではなく、このボードは下側には高速基板用拡張コネクタを持っていません。マイクロサーバは、コスト低減、消費電力、熱、体重を維持したい大規模イーサネット接続クラスタでの使用に特化しているといえるでしょう。。
上記の表は3つのタイプの仕様を並べたものです。
Raspberry PiとBeagleBoneとの比較
シングルコアARMを搭載したRaspberry Piと比較した場合、モデルB+で増設されたGPIOよりも、Prallella Embeddedボードの方がGPIOの数が多いです。加えて、ParallellaのGPIOは高速で実行させることができ、FPGA接続用のカスタムインターフェスを持っています。またRaspberry PiはRAM容量が少なく、100Mイーサネットしかない上、当然マルチコアアクセラレーターは持っていません。ただRaspberry PiはGPUの恩恵があり、安価であるため、初心者のための学習ツールとしては唯一無二のものです。その結果、周辺機器やアドオンが豊富に存在しています。さらに、非常に大規模で活気のあるコミュニティがあることは言うまでもありません。
一方BeagleBoneBlack(BBB)はRaspberry PiのCPUを増やし、GPUを減らしたようなものです。GPIO数も少なく、拡張性という点では劣っているといえるでしょう。
Summaryまとめ
Parallellaボードは非常に高速高性能なスパコンボードであり、それはつまり処理能力に余裕があるということです。もしあなたのプロジェクトが計算処理が必要なものであった場合、このParallellaボードを手に取ってみることをおすすめします。上記で他のボードとの比較を行いましたが、結局のところ、優れているかどうかはユーザーの使用用途に大きく依存します。下手に食い合いをするのではく、他のボードと共存を図り、相互に学習していけることを切に願っています。
Raspberry Pi 2 enters the multi-core realm!
Today sees the launch of Pi 2, the latest edition to the Raspberry Pi Arsenal.
Not so long ago the world of single board computing was turned upside down when the Raspberry Pi landed on our benches. Before the Raspberry Pi, the Single Board Computer landscape offered limited choice for under $100, but since Raspberry Pi have entered the market, they have played a significant part in driving down the price of Single Board Computing.
With sales to date of around 4.5 million units, the Raspberry Pi is only half a million units away from becoming the fastest selling British Computer, and is soon set to steal the tittle from the ZX Spectrum. The first Raspberry Pi (AKA "Pi 1"), was based on an ARM11 Broadcom processor, and was a very capable and versatile little board. It gave many people their first experience of Linux and also introduced others to Physical Computing, with the inclusion of GPIO pins for creating and connecting all kinds of hardware projects. I've taken it into schools to teach kids coding, I've even sent one up to the edge of space last year with a Superman Action Figure. The commercial world has also began to adopt it in Industrial Applications.
However, since its introduction, a few contenders have entered the game to try and out feature the Pi in an attempt to grab some it's success. So it was only a matter of time before Raspberry Pi would look to supercharge the world's most favourite Single Board Computer, and when Eben told us about the Foundations plans to "soup up" the Raspberry Pi, we were very excited indeed!
The World's Favourite Single Board Computer is now 6 x Faster!
So what is the difference between the former Raspberry Pi Model B+ (AKA Pi 1) and the new Raspberry Pi 2 Model B? Well, they look almost identical, but Pi 2 has a faster processor and more memory, whilst maintaining compatibility with its earlier version.
Key New Features
- The Broadcom BCM2836SoC Quad Core 900Mhz ARM Cortex A7 gives 6 x the performance of the previous model Pi 1 (No changes to the GPU)
- Twice the memory, now boasting 1GB LPDDR2
- The same price point as Pi 1
- Better availability at launch date. The factory has cranked up production to make as many Pi 2’s available as possible on launch day.
Compatibility
Don’t worry, whatever you’ve been doing on your Pi 1, will work on a Pi 2. The only difference here is the performance.
Increasing the number of processor cores has resulted in a change of processor architecture and new Linux Kernel. The former Pi processor was based on an Arm 11 V6 architecture, the new Pi 2 has an ARM Cortex A7, V7 processor architecture. To maintain continuity with the current operating system, there will be a new operating system build to accommodate the change of Linux Kernel. Other than that, it is almost identical to the currently available O/S and can be used across all Raspberry Pi models. The new O/S will be available to download from launch day.
Performance
Thanks to the 4 processor cores, higher processor clock speed and better caching infrastructure, users will notice a good improvement in single threaded application and sustainable improvement in multithreaded applications.
The general user will experience a faster and smoother ride, just browsing the web alone, shows a noticeable improvement in speed! Apps are more responsive and programs run smoother and faster. In fact for some, it could even now replace a PC, especially when it comes to kids doing their homework. They can now browse the web quicker and use Libre Office to write up their assignments.
Power Consumption
More processing power of course means more power consumption. The original Raspberry Pi Model B’s peak power was around 3 watts. The migration to the Model B+ then saved around 1 watt of power by improving the power supply circuitry on board, bringing it down to around 2 watts. With its Quad Core processor, peak power consumption will draw more current. This is around 1 watt of incremental power consumption at the high end, so at peak power, the Pi will be around 3 watts again. However, in return for this 50% increase in peak power consumption, users will benefit from a 6 fold increase in processing power, which is actually a pretty good balance of power and performance! When idling, power consumption is about the same as Pi 1.
With regards to the Raspberry Pi model A and Compute Pi, there are no immediate plans to upgrade these to the new Quad Core processor.
All this extra processing power opens up lots more applications as well as enhancing existing ones.
Some of the applications and projects that users have tried to run on the previous Pi 1 were often pushing it the limit, or it just didn’t have enough processing power to cope, even with overclocking.
For example, applications around Software Defined Radio (SDR) can now be run on a Raspberry Pi. SDR applications include Amateur Radio or perhaps even creating your own cellular base station. Pi 2 could also be used with Open CV to create Computer Vision applications. This means that things like facial recognition and individual profile tracking are now feasible.
Below is a short video overview where I compare the Pi 1 B+ to the new P2 B.
At DesignSpark, we’ll be looking to share with you some applications that take advantage of it’s faster processing capability. So, “watch this space!”
Eben and I took the Pi 2 to the BBC last week to chat to their Technology Correspondent, Rory Cellan-Jones. The interview with Eben can be found on the BBC Technology Website.
left; Rory Cellan-Jones (BBC News technology correspondent ), Pete Wood(RS), Eben Upton (Raspberry Pi)
Related Content
- Andrew Back takes the Raspberry Pi 2 for a Test Drive with GNU Radio - Read More
- Find more Raspberry Pi articles in our Raspberry Pi Design Centre
- follow me on twitter @petenwood and DesignSpark @DesignSparkRS
Taking the Raspberry Pi 2 for a Test Drive with GNU Radio
Installing GNU Radio and receiving aircraft radar with a USB TV tuner
The Raspberry Pi has been put to countless creative uses, with it's low cost and easy to use GPIO, coupled with a passionate and inventive community, giving birth to applications that have ranged from simple fun, to inspired and even profound.
However, the single-core Raspberry Pi couldn't be everything to everyone and a common wish was for just a little more horsepower, for those applications that really need it. A great example being software-defined radio (SDR), where components usually implemented in hardware are instead implemented in software. Resulting in flexibility, but at the cost of being computationally intensive.
The Raspberry Pi 2 Model B, with it's quad-core processor and 1GB RAM, weighs in at around six times the performance of its predecessor and should far better accommodate SDR applications.
Installing GNU Radio
The GNU Radio SDR toolkit is a fairly substantial codebase and with some equally heavyweight dependencies. Thankfully, Raspbian packages are available — not in the current “wheezy” release , but in the “jessie” testing release. The MicroSD card that came supplied with the Pi 2 was based on wheezy, but adding a line to the Apt configuration was all that was needed to get jessie packages.
Edit /etc/apt/sources.list and add the line:
deb http://archive.raspbian.org/raspbian jessie main
Update the Apt cache:
$ sudo apt-get update
Install GNU Radio runtime and development files:
$ sudo apt-get install gnuradio gnuradio-dev
Setting up RTL-SDR
It still never ceases to amaze me what can be done with a humble USB TV tuner dongle that can be picked up for around £10 plus open source SDR software. Above can be seen the Pi 2 with such a tuner plugged in to one of the USB ports, and the supplied antenna attached. For more information on the wonder that is rtl-sdr, see the post I wrote about this back in 2012.
Since we're re-purposing a TV tuner that is supported by the Linux kernel and which would otherwise be claimed by it and for TV reception, we need to first stop the kernel from doing so.
Edit the file /etc/modprobe.d/raspi-blacklist.conf and add the line:
blacklist dvb_usb_rtl28xxu
Install the rtl-sdr software and GNU Radio support:
$ sudo apt-get install rtl-sdr gr-osmosdr
In order to access the device as a non-root user we need to set up a new udev rule, but first we need to ascertain the USB ID. Ensure that the tuner is plugged in and type:
$ lusb
This gave me:
Bus 001 Device 004: ID 0bda:2832 Realtek Semiconductor Corp. RTL2832U DVB-T
Next we create the file /etc/udev/rules.d/20.rtlsdr.rules, with the line:
SUBSYSTEM=="usb", ATTRS{idVendor}=="0bda", ATTRS{idProduct}=="2832", GROUP="adm", MODE="0666", SYMLINK+="rtl_sdr"
We could restart udev at this point, but since we also blacklisted a kernel module it's probably just easiest to reboot.
A simple test
To get a simple spectrum display we can run the FFT application which is provided as part of the gr-osmocom software.
$ osmocom_fft
If we then check the CPU load we can see that we have plenty of capacity to spare, with just one core at around 70% utilisation.
gr-air-modes
Around 2 ½ years ago I wrote about how you could use rtl-sdr hardware together with the GNU Radio-based gr-air-modes software, to receive position and heading information from aircraft Mode-S transponders. At the time I used a laptop, and did try using a Raspberry Pi Model B also, but this didn't have quite enough processing power and resulted in buffer underruns.
In order to build gr-air-modes a few additional dependencies are required.
$ sudo apt-get install sqlite pyqt4-dev-tools liblog4cpp5-dev swig
With these installed the sources can be cloned from GitHub:
$ git clone https://github.com/bistromath/gr-air-modes.git
To then build and install:
$ cd gr-air-modes
$ mkdir build
$ cd build
$ cmake ../
$ make
$ sudo make install
$ sudo ldconfig
We can then run the application with:
$ modes_rx -s osmocom
And with only a tiny antenna and a good number of miles from the nearest airport, I still managed to get no shortage of output!
Not to mention, once again with plenty of headroom to spare.
Conclusion
The Pi 2 provides a marked improvement on the first generation hardware, with four cores instead of one and each of these being a more recent and more powerful version of the ARM architecture. A performance improvement that will be welcomed by many and not least of all those with SDR applications in mind.
New products
Introducing the Pi 2!
Reference designs for ROHM
This page includes all the reference designs for ROHM. You can download the schematic and PCB designs in DesignSpark PCB format and its BOM list in the attachments of knowledge items below.
BD9A300MUV

The BD9A300MUV is a 2.7V to 5.5V input, integrated 3A MOSFET 1ch synchronous buck switching regulator.
Read moreBD9C301FJ

The BD9C301FJ is a 4.5V to 18V Input, 3.0A integrated MOSFET 1ch synchronous buck switching regulator .
Read moreBD9D321EFJ

The BD9D321EFJ is a 4.5V to 18V input, 3.0A integrated MOSFET 1ch synchronous buck switching regulator.
Read moreBD9E102FJ

The BD9E102FJ is a 7.0V to 26V input, 1.0A, integrated MOSFET single synchronous buck switching regulator.
Read moreBD9E300EFJ

The BD9E300EFJ is a 7.0V to 36V input, 2.5A integrated MOSFET single synchronous buck switching regulator.
Read moreReference designs for Panasonic
This page includes all the reference designs for Panasonic. You can download the schematic and PCB designs in DesignSpark PCB format and its BOM list in the attachments of knowledge items below.
MN101EF69D Evaluation Board

The circuit design of BPSK communication LSI MN101EF69D Evaluation Board R51BRD (Panasonic).
Read moreReference designs for RENESAS
This page includes all the reference designs for Renesas. You can download the schematic and PCB designs in DesignSpark PCB format and its BOM list in the attachments of knowledge items below.
GR-KURUMI Board

The GR-KURUMI board incorporates the RL78G14, Renesas 16-bit low-power consumption MCU
Read moreMX-PTL™ M12 Cordsets
DesignSpark 無料講習会 (RSコンポーネンツ× P板.com)
RSコンポーネンツ× P板.com 主催「DesignSpark 無料講習会」の開催が決定しました。DESIGN SPARKが誇る2つのCAD、DSPCB(基板設計CAD)とDSM(3D CAD)の講習会を下記の概要で行います。「使ってみたかった」「入れたけど使えてない」「自己流で使っているがなんか使いにくい」といった方は、ぜひ受講してみてください。基板設計から筐体設計までを無料ツールで完結できます。最終製品のプロトタイプ作成に活用できます。
今回、DesignSpark Mechanical講習会は、東京・大阪、ともに初開催となります。
■セミナー名: 「DesignSpark 無料講習会」
■対象者: CAD初心者、DesignSparkの基本操作を習得されたい方
■日時:
<東京会場> 2015/ 3/ 9(月) 13時:DSPCB講習会、15時10分 DSM講習会
<大阪会場> 2015/ 3/11(水) 13時:DSPCB講習会、15時10分 DSM講習会
■場所:
<東京会場> 関東ITソフトウェア健保会館 1F会議室 A+B室
JR総武線「大久保駅」下車北口改札より徒歩1分
JR山手線「新大久保駅」下車徒歩5分
<大阪会場> 大阪研修センター江坂 4F 会議室B
地下鉄御堂筋線「江坂」駅から徒歩1分
■定員:
<東京会場>
DSPCB講習会 50名
DSM講習会 50名
<大阪会場>
DSPCB講習会 50名
DSM講習会 50名
■持ち物:
・ラップトップPC (DSPCB か DSM をセットアップしておいて下さい)
・マウス (必須。三つボタン対応ホイールマウスを推奨)
・筆記用具
・名刺
■受講申込: 受講料は無料。 こちらのP板.com殿の特設ページからお申込み頂けます。
■備考:
・DSPCBセミナーとDSMセミナーは、別々の内容です。
・片方だけの受講も、両方の受講も、どちらとも可能です。
・PCを持参しない聴講でもご参加頂けますが、
PC持込み者を前提としたセミナー内容になります。
・無線LAN環境を用意しておりますが、速度が遅い場合がございます。
・DesignSparkPCBはこちらからダウンロード頂けます。
・DesignSpark Mechanicalはこちらからダウンロード頂けます。
■当日スケジュール:
12:45 ~ 13:00 受付
13:00 ~ 15:00 DesignSparkPCB講習会
15:00 ~ 15:10 受付
15:10 ~ 16:50 DesignSpark Mechanical 講習会
■セミナー内容:
・DesignSpark PCB
- セットアップ
- 回路図作成
- レイアウト図作成
- 部品と基板の手配
- 技術問合せについて
・DesignSpark Mechanical
- セットアップ
- 基本操作
- モデリング(プル機能、移動、断面図)
- 3Dモデリングの実践
- 回転体
Rise of the Drones
Just a few years ago, drones or unmanned aerial vehicles (UAVs) were virtually unknown. Since then, these unmanned aerial vehicles have seen massive growth in manufacture, sales, uses and potential applications. How UAVs will affect our lives in the future remains to be seen but one thing is for sure they will have a profound impact on many industries.
Everywhere you look UAVs are flying across headlines and the technology is changing the way we interact with the world around us, from live broadcast of sporting events, real estate imagery, rescue services as a second set of eyes in the sky, military offense or surveillance, ambulances delivering lifesaving medical supply, goods delivery services, film making, recreational uses and hobbyists.
Whilst all this is great there are serious safety and invasion of privacy concerns that aviation authorities around the world are trying to address, some countries already have guidelines for hobbyists and strict regulations for commercial activities however not all countries are in harmony on good all round practices.
The applications for UAV are growing at an extremely fast rate which fall into hobbyist, commercial and military.
Market Sectors and interesting applications include;
Music video of ‘OK Go – I Won’t Let You Down’ was filmed in one continuous shot using a UAV; this type of filming would not of been possible a few years ago.
UAVs come in various formats but can be broken into two topologies 1) fixed wing or 2) multirotor.
Fixed wing resemble a traditional airplane design, we have seen these on the news typically military use with terrifying names like watch keeper or predator.
Multirotor is where the whole UAV thing opens up and for me at least is where the excitement begins it encompasses the traditional style helicopter with a large rotor with cyclic adjustment and a small rotor to control the direction its facing.
Non traditional multirotors mainly have a number of arms with fixed pitch propellers which are set equidistance apart, to control the movement of the multirotor is achieved by speeding or slowing down the propellers to achieve the desired movement.
Here we can see the standard terminology for an aircraft movement,
The yaw relates to horizontal rotation that relates to the direction the aircraft is facing. Pitch is rotation for moving the front and tail end up and down with the front down the UAV will move forward or vice versa and Roll is the rotation from side to side this makes it move to the right or left.
Here we see a 4 rotor UAV typically known as a Quad or Quadcopter.
For this to fly we have 4 equally sized prop / motor configuration, two of the props generate down thrust in a clock wise rotation and the other two in a counter clockwise rotation, the reason for this is to prevent the quad from spinning having equal rotational forces in a clockwise and counter clockwise directions negates the twisting forces that you might expect if all props were spinning in the same direction.
By speeding up or slowing down certain pairs of props we can achieve all the directional movements of Roll, Pitch and Yaw.
For example if we speed up props 3 and 4 the back of the quad will tilt up causing it to fly forward, if we speed up props 2 and 3 the right hand side of the quad will tilt up causing it to fly to the left, by proportionally doing both we can get the quad to fly forward and to the left. This principle can be applied to any combination of props to achieve flight in any direction.
Now if we speed up props 2 and 4 the quad will rotate about the horizontal axis in a clockwise direction and similarly if we speed up props 1 and 3 the quad will rotate in a counter clockwise direction.
Whilst in this example we see a quad there are other configurations of multirotor that use this similar principle, a hexcopter use 6 props 3 in cw and 3 in ccw whilst an octocopter uses 8 props 4 in cw and 4 in ccw. One other UAV that we see is a tri copter this uses 3 props 2ccw and 1cw and also employs a servo to tilt the angle of the 2nd ccw prop to control yaw movement.
A very small foldable tricopter from the company Pocket Drone
The most recognizable quadcopter from company DJI
A kit built Hexacopter
A heavy lift Octocopter carrying an SLR camera from Droidworx
Now to see this is in action with one of the most exhilarating uses for UAV is racing, have you every wanted to fly a pod racer from the sci-fi film stars wars or ride a 74-Z speeder bike in the woods on planet Endor, well this possibility is here, with FPV racing. Each machine is equipped with a small camera mounting on the UAV that is then transmitted back to a screen or video goggles to give you the experience of actually sitting in the craft whilst tearing around. This has proved to be very addictive and 2015 will see the start of officially run races as part of the Aerial Grand Prix.
Over this series of Blogs I will be touching on the major aspects of UAVs, if you are considering getting your first UAV then I will be running through a build of a multirotor UAV, covering different payloads and uses, safety aspects and all things related to UAV. Next time will be looking at build a UAV verses buy a UAV the benefits and what is currently available.
Greg Spencer
Lorian – Aerial Technology Systems
Han® hoods and housings
DesignSpark PCB 3D表示に対応した基板を作成するには?
【この解説ページでは、独自のライブラリ作成とプリント基板レイアウト作成が可能な中級以上のユーザを対象にしています。ライブラリ作成やプリント基板レイアウトの作成についてはこちらをご覧ください】
このページでは、Designspark PCBで作成したプリント基板デザインをDesignspark PCBの3D表示に対応させる方法について解説します。ここでは、ローム降圧DC/DCコンバータ BD9C301FJの評価ボードのリファレンスデザインを例に3Dモデルを適用する手順をみていきます。まず、通常の手順でライブラリ作成とプリント基板レイアウトの作成を行ってください。
*なお、配布中のローム降圧DC/DCコンバータ BD9C301FJの評価ボードのリファレンスデザインは、3D表示に対応したデータになっております。
Height(高さ)プロパティの適用
まず、それぞれのパーツについて高さの情報を与える必要があります。この値は部品のデータシートに記載されている最大高さにするのが便利でしょう。なぜなら、このHeightプロパティの情報は、Designspark Mechanicalへのエクスポートにも利用され、筐体設計には最大高さが利用されることが多いからです。Heightプロパティは、プリント基板デザインの生成された部品のインスタンスに個別に適用することも可能ですが、あらかじめライブラリに適用しておいた方が簡単です。すでに、部品を配置してしまっている場合は、ライブラリのプロパティ値を変更後、コンポーネントのアップデートを行い、プリント基板デザインの方に適用するようにしてください。
Heightプロパティの設定にはライブラリ作成時に個別に割り当てをするよりもValueの一覧から、まとめて入力するの方が簡単ですので、その方法を説明します。ライブラリマネージャから、Componentsタブを選択します。一番下にあるValuesボタンを選択して、ライブラリのValue値一覧を表示させます。
一覧の右側にあるAddボタンを押して、Nameに"Height"と入力、Heightプロパティの行を作ります。各部品の高さ情報を入力したら、OKを押してウインドウを閉じます。高さのない部品は、値を入力する必要はありません。これで、高さ情報がライブラリに設定されました。すでにライブラリの部品を利用している場合は、基板デザインへのアップデートを忘れず行ってください。
3Dモデルを適用していない3D表示
高さ情報の適用された、この状態で3D表示させてみましょう。3D表示させるには、3Dメニューから、3D Viewを選択してください。
この状態では、次の画像のように高さ情報が適用された箱がたくさん作成されていると思います。また、高さプロパティに値がない場合は、一定の高さの箱になっています。スルーホールの穴には白いピンが接続されています。また、箱の外形はシルクの外形図を元に作成されていることが確認できます。これをきちんとした3D表示ができるように変えていきます。
3Dモデルの適用
それでは、本題の3Dモデルの適用方法に移っていきます。3Dモデルはライブラリに適用することもできますが、今回は部品のインスタンスに直接適用する方法について説明します。3Dモデルを適用したいモデルを選んで、右クリック、Properties...を選択してください。ここでは、メインICにSOICのパッケージを適用してみます。
プロパティ画面から、Addを選択します。
次のようなValueウインドウがでてきます。Nameに、3dpackage、ValueにSOIC*と入力してください。このValueの値にいれるパッケージの名前は、3Dのライブラリから利用できそうなものを選択します。ライブラリマネージャの3D VIewタブから一覧を確認することができます。Nameにはここにあるパッケージ名を入れます。また、自分でこのパッケージライブラリを作成することも可能ですが、今回は既存のものを利用します。
OKを押して、プロパティウインドウに戻ってください。適用を押して、その後ウインドウを閉じ、再び3D表示してみましょう。
このように3D表示すると、きちんとICのパッケージが基板上に表示されていると思います。
同様の手順でチップコンデンサに06*を、チップ抵抗にC040*を適用します。コイルには外形に基づいた黒い箱の生成できるSMD?を適用します。
続いて、ピンヘッダに3Dモデルを適用します。ピンヘッダは、正しく表示するためにHeightプロパティを調整する必要があります。まずそのまま、3MHDR*パッケージを適用してみます。このようにただの黒い箱になってしまいます。
そこで、Heightプロパティを2.5mmにしてみます。すると、ピンが現れました。このように、3MHDR*パッケージは最大高さを設定していると正しく表示されないことに注意してください。
次は、3Dパッケージを表示させたくない部品の設定方法です。Nameに3dpackage、Valueは空欄を設定します。端子台とテスト端子に適用します。すると、次のように、何も表示されず、シルクが見える状態になります。
3D表示の調整
これでプロパティの適用はすべて完了しました。ここではさらにリアルな基板のような表示を目指して表示の設定を変更します。
まず、3D表示画面の左にあるSettingsアイコンをクリックします。
緑のレジスト基板の場合、3D View SettingsウインドウのColorsタブのBoardをDark Green、CopperをForest Greenとすると本物に近い見た目となります。
また、Settingsタブでは、Board Thicknessを0.800mm、Layer Drawing Thicknessを0.001mm、Gap For Exploaded Viewを0.000mmとすると自然な見た目となります。
完成
これで、基板の3D表示ができるようになりました。3D表示をさせることでより基板の完成イメージを把握しやすくなります。
Designspark PCBはフル機能を商用利用を含め、完全無料でご利用いただける基板設計ソフトウェアです。多数のチュートリアル等を公開しております→Designspark PCBの使い方一覧
リファレンスデザインカタログでは回路図、基板レイアウト、ライブラリを含んだ多数のリファレンスデザインをご用意しております。
New products
Building a Raspberry Pi 2 WebRTC camera
Using Janus and gStreamer to feed video straight into the browser.
WebRTC enables browser-based Real Time Communications (RTC) via simple APIs. It is royalty free and powerful. We can use Janus, a general purpose WebRTC gateway, to stream video from a Raspberry Pi directly to browsers, without having to install any extra software on client machines.
We will use a gStreamer pipeline to take the video output from a Raspberry Pi camera module and encode the video in H.264 format before passing it on to Janus.
Hardware used:
Initial Raspberry Pi setup
To begin with we will assume that:
- you are running the latest version of Raspbian (version 'January 2015' at time of writing).
- you have a Raspberry Pi camera module attached.
- the network is configured and you can SSH into the Pi.
First we will enable the Pi camera module:
- $ sudo raspi-config
- Choose 'Enable Camera' and press return
- Save and quit raspi-config
Testing the camera
Now that we have enabled the camera module we can test that it is working correctly using the command line tool raspistill.
$ raspistill -o test.jpg
This should have taken a photo. Type ls to see if test.jpg has appeared in your directory.
Copy this photo over to your local machine and open it with an image viewer. If it needs rotating you can use the options -vf and -hf for vertical and horizontal flipping when taking the photo. E.g:
$ raspistill -vf -hf -o test2.jpg
Once you are happy the camera is working and you know which extra options to use we can move on to getting the camera streaming video over the network.
Setting up Janus
It is worth taking a look at the Janus GitHub repository for some background information and to assist with installation.
First make sure your Apt cache is up to date:
$ sudo aptitude update
Next we need to install build dependencies as follows:
$ sudo aptitude install libmicrohttpd-dev libjansson-dev libnice-dev libssl-dev libsrtp-dev libsofia-sip-ua-dev libglib2.0-dev libopus-dev libogg-dev libini-config-dev libcollection-dev pkg-config gengetopt libtool automake dh-autoreconf
We will not be making use of Data Channels, WebSockets or RabbitMQ so we don't need to install the optional dependencies.
Next we can clone the repository onto the Pi, build and install:
$ git clone https://github.com/meetecho/janus-gateway.git
$ cd janus-gateway
$ sh autogen.sh
$ ./configure --disable-websockets --disable-data-channels --disable-rabbitmq --disable-docs --prefix=/opt/janus
$ make
$ sudo make install
Now run a comand to install default configuration files:
$ sudo make configs
Next modify /opt/janus/etc/janus/janus.plugin.streaming.cfg (we will use nano but you may use an editor of your choice):
$ sudo nano janus.plugin.streaming.cfg
Add the following lines (and comment out the other example streams by adding a semicolon before each line)
[gst-rpwc]
type = rtp
id = 1
description = RPWC H264 test streaming
audio = no
video = yes
videoport = 8004
videopt = 96
videortpmap = H264/90000
videofmtp = profile-level-id=42e028\;packetization-mode=1
Save and exit the editor.
Installing gStreamer and Nginx
gStreamer is a pipeline-based multimedia framework that we will use to encode the video for streaming. To install gstreamer:
$ sudo aptitude install gstreamer1.0
Nginx is a lightweight web server that we will use to serve the Janus demos, specifically the streaming example. To install this:
$ sudo aptitude install nginx
Now copy the Janus HTML content to the Nginx server root:
$ sudo cp -r /opt/janus/share/janus/demos/ /usr/share/nginx/www/
Now start Nginx:
$ sudo service nginx start
Streaming test
Now open two SSH shell sessions logged into the Pi. We will run one command in each shell.
In the first shell execute the following:
$ raspivid --verbose --nopreview -hf -vf --width 640 --height 480 --framerate 15 --bitrate 1000000 --profile baseline --timeout 0 -o - | gst-launch-1.0 -v fdsrc ! h264parse ! rtph264pay config-interval=1 pt=96 ! udpsink host=127.0.0.1 port=8004
This will take video from the camera, format it and pipe it into gStreamer to be H.264 encoded, before sending it on to Janus.
In the second shell navigate to /opt/janus/bin/ and execute:
$ ./janus -F /opt/janus/etc/janus/
This starts the Janus WebRTC gateway.
On a different computer connected to the same network, ensure you running a recent version of Firefox (we are using build 37). Enter the following into the address bar:
http://<IP_of_your_pi>/streamingtest.html
This will load the streaming demo that is bundled with Janus. Click the 'Start' button next to the heading, choose your stream and click 'Watch or Listen' to display the video stream from the Pi directly into your browser!
Enclosure build
To complete the hardware side of the project we made a simple enclosure for the Pi and Pi camera module that can be mounted on a tripod or CCTV camera mount. See the DesignShare project for more details, including the design files for laser cutting.
With thanks to Neil Stratford and Tobias Wolf for info useful in getting Janus working.