阿癫佬与泼妇玩灯光效果
smching 于 2015-2-3 17:59 编辑
2013-7-16 15:27 上传
(54.38 KB)
这里教你怎样使用Vixen软件与Arduino控制灯光效果
Vixen在华文里不懂称为什么。用Google翻译之,很滑稽,泼妇也
Arduino也没有真正的华文名字,直接翻译,就称它为阿癫佬吧
在泼妇(软件)与阿癫佬(硬件)的软硬兼施之下,你可以隨心所意的控制灯光效果了。
这里先简单的介绍一下泼妇(Vixen)
Vixen是一个免费的灯光效果设计软件。 通过电脑和一些硬件,任何人都可以设计与音乐同步的灯光效果显示。
Vixen支持不同的控制器,其中通过DMX(如果需要,可以自制一个OpenDMX,非常简单)可以控制许多市面上销售的专业形DMX设备(fixture),最常见的就是disco场所的激光灯光。
2013-7-16 12:40 上传
(8.97 KB)
2013-7-16 12:40 上传
(8.92 KB)
请看泼妇如何与阿癫佬配合
最新的版本是Vixen3,其中最吸引人之处是支持预览。与Vixen2比较,Vixen3应用有些难,且缺少了Vixen2中的某些常用功能。此教程是基于Vixen2,请下载Vixen2,并安装到你的电脑, 但你必须先安装Microsot.NET Framework 2.0在你的电脑上
Arduino代码
由于Arduino Mega拥有12个PWM输出和多个数字(Digital)输出,所以用了它来控制灯光。这里我隋便写了几行代码,上载至Arduino Mega,与Vixen2测试了一下,可以正常运行。如果你不需要多个PWM,只要稍微更改代码就可以用在不同的Arduino了。
ARDUINO 代码复制打印
/* 16 Channels Lighting Controller By smching ([url=http://ediy.com.my]http://ediy.com.my[/url]) Allow Arduino Mega to communicate with Vixen via generic serial plugin/#define CHANNELS_COUNT 16////////// PWM pin#define Ch1 2// PWM Pin 2#define Ch2 3// PWM Pin 3#define Ch3 4// PWM Pin 4#define Ch4 5// PWM Pin 5#define Ch5 6// PWM Pin 6#define Ch6 7// PWM Pin 7#define Ch7 8// PWM Pin 8#define Ch8 9// PWM Pin 9#define Ch9 10// PWM Pin 10#define Ch10 11// PWM Pin 11#define Ch11 12// PWM Pin 12#define Ch12 13// PWM Pin 13/////////// digital pin#define Ch13 18// DIGITAL Pin 18#define Ch14 19// DIGITAL Pin 19#define Ch15 20// DIGITAL Pin 20#define Ch16 21// DIGITAL Pin 21int Ch[CHANNELS_COUNT] = {Ch1, Ch2, Ch3, Ch4, Ch5, Ch6, Ch7, Ch8, Ch9, Ch10, Ch11, Ch12, Ch13, Ch14, Ch15, Ch16};int incomingByte[CHANNELS_COUNT]; // array to store the values from serial portvoid setup(){Serial.begin(9600); // set up Serial at 9600 bpsfor (byte i=0; i<channels_count; i++)="" pinmode(ch[i],="" output);="" declare="" channel="" pin="" as="" an="" output[/i][i]}[/i][i]void loop() {[/i][i] if (Serial.available() >= CHANNELS_COUNT) {[/i][i] for (int i=0; i<channels_count; i++)="" {="" [/i][i] incomingByte = Serial.read(); // read each byte[/i][i] if (i<12) { //arduino mega consists of 12 PWM[/i][i] analogWrite(Ch, incomingByte[/i][i]); // Write values to channel pins } else { digitalWrite (Ch[i], incomingByte[i]); } } }}
/
16 Channels Lighting Controller
By smching ([url=http://ediy.com.my]http://ediy.com.my[/url])
Allow Arduino Mega to communicate with Vixen via generic serial plugin
*/
#define CHANNELS_COUNT 16
////////// PWM pin
#define Ch1 2// PWM Pin 2
#define Ch2 3// PWM Pin 3
#define Ch3 4// PWM Pin 4
#define Ch4 5// PWM Pin 5
#define Ch5 6// PWM Pin 6
#define Ch6 7// PWM Pin 7
#define Ch7 8// PWM Pin 8
#define Ch8 9// PWM Pin 9
#define Ch9 10// PWM Pin 10
#define Ch10 11// PWM Pin 11
#define Ch11 12// PWM Pin 12
#define Ch12 13// PWM Pin 13
/////////// digital pin
#define Ch13 18// DIGITAL Pin 18
#define Ch14 19// DIGITAL Pin 19
#define Ch15 20// DIGITAL Pin 20
#define Ch16 21// DIGITAL Pin 21
int Ch[CHANNELS_COUNT] = {Ch1, Ch2, Ch3, Ch4, Ch5, Ch6, Ch7, Ch8, Ch9, Ch10, Ch11, Ch12, Ch13, Ch14, Ch15, Ch16};
int incomingByte[CHANNELS_COUNT]; // array to store the values from serial port
void setup()
{
Serial.begin(9600); // set up Serial at 9600 bps
for (byte i=0; i<channels_count; i++)="" pinmode(ch[i],="" output);="" declare="" channel="" pin="" as="" an="" output[/i]
[i]}[/i]
[i]void loop() {[/i]
[i] if (Serial.available() >= CHANNELS_COUNT) {[/i]
[i] for (int i=0; i<channels_count; i++)="" {="" [/i]
[i] incomingByte = Serial.read(); // read each byte[/i]
[i] if (i<12) { //arduino mega consists of 12 PWM[/i]
[i] analogWrite(Ch, incomingByte[/i][i]); // Write values to channel pins
} else {
digitalWrite (Ch[i], incomingByte[i]);
}
}
}
}
注意:上面代码编辑将会不成功,也许是copy与paste时,Geek-workshop.com翻译错误吧?在此还保留着错误的代码。我在11#更正了(03/10/2013)
启动与设定Vixen
打开Vixen点击Sequence>New event sequence>Vixen standard sequence当出现New Sequence Wizard,点击Next按钮点击Next按钮以便使用100毫秒Event Period点击Next按钮,不使用Profile输入Channel以配合你的控制器。由于使用了16 Channels设计的Arduino,所以这里输入16,然後点击Next按钮继续点击Setup Plugins按钮以便设定Vixen插件,如图
2013-7-16 15:27 上传
(47.12 KB)
在Available Plugins里双击Generic serial以便启动串行插件在Plugins in Use里点击Generic serial点击Pugin Setup以便设定设定值串口设置选择Arduino使用的串口以及Baud reate,然後点击OK按钮,如图
2013-7-16 15:27 上传
(24.22 KB)
点击Next按钮继续下一步骤点击Next按钮跳过Audio and Extent Patterns(需要与声频同步时才设定)输入Sequence Time,默认是一分钟点击Create It按钮,然後输入一个文件名字,再点击Save以保存文件此时Vixen灯光效果设计窗口出现了
2013-7-16 15:27 上传
(94.9 KB)
使用Vixen
选择Channel(你可以同时选择多个Channel)和Sequence Time,如图。现在选择了十个Channel和两秒Sequence Time。完成你想要放置灯光效果的范围后,现在可以点击效果icon以便控制效果重复步骤2以制造更多效果点击Play/Pause/Stop icon起始播放灯光效果
2013-7-16 15:27 上传
(117.27 KB)
想要怎样效果,就有怎样效果,非常方便
与声频同步
2013-7-16 15:27 上传
(67.26 KB)
2013-7-16 15:27 上传
(69.35 KB)
根据声频信号设计你的灯光效果
2013-7-16 12:49 上传
(197.89 KB)
via - 极客工坊