Merge remote-tracking branch 'refs/remotes/noisymime/master'

This commit is contained in:
VitorBoss 2017-08-02 23:17:20 -03:00
commit fb3c345f23
41 changed files with 145376 additions and 87377 deletions

View File

@ -24,20 +24,50 @@
# Template #1: General project. Test it using existing `platformio.ini`.
#
# language: python
# python:
# - "2.7"
#
# sudo: false
# cache:
# directories:
# - "~/.platformio"
#
# install:
# - pip install -U platformio
#
# script:
# - platformio run
language: python
python:
- "2.7"
dist: trusty
sudo: required
cache:
directories:
- "~/.platformio"
#addons:
# apt:
# sources:
# - sourceline: 'deb http://ports.ubuntu.com/ubuntu-ports trusty-backports main restricted universe multiverse'
# packages:
# - cppcheck/trusty-backports
before_install:
- sudo apt-get update -qq
# - sudo apt-get install -t trusty-backports cppcheck
- sudo apt-get build-dep -qq cppcheck
- wget https://github.com/danmar/cppcheck/archive/1.79.zip
- unzip 1.79.zip
- cd cppcheck-1.79
# - make SRCDIR=build CFGDIR=/usr/share/cppcheck/ HAVE_RULES=yes
- sudo make install CFGDIR=/usr/share/cppcheck/ HAVE_RULES=yes
install:
- pip install -U platformio
script:
- cd /home/travis/build
- git clone --depth=20 https://github.com/noisymime/cppcheck.git noisymime/cppcheck
- cd noisymime/speeduino
- platformio update
- platformio run -e megaatmega2560 -e teensy35 -e bluepill_f103c8 -e genericSTM32F103RB
- cd ..
- speeduino/misra/check_misra.sh
notifications:
slack: speeduino:Y8Bhhviu4r7HFF3abMYDnH3p
#

25
misra/check_misra.sh Normal file
View File

@ -0,0 +1,25 @@
if [ -f ./results.txt ]; then
rm results.txt
fi
for i in speeduino/speeduino/*.ino; do
#cppcheck --xml --include=${i%.*}.h --include=speeduino/speeduino/globals.h $i > /dev/null
cppcheck --dump --suppress=syntaxError:speeduino/speeduino/src/PID_v1/PID_v1.h --include=${i%.*}.h --include=speeduino/speeduino/globals.h $i > /dev/null
done
mv speeduino/speeduino/*.dump ./
rm ./utils.*.dump
python cppcheck/addons/misra.py *.dump 2> results.txt
rm *.dump
cat results.txt
# wc -l results.txt
errors=`wc -l < results.txt | tr -d ' '`
echo $errors MISRA violations
if [ $errors -gt 0 ]; then
exit 1
else
exit 0
fi

View File

@ -22,11 +22,12 @@ board=teensy35
framework=arduino
lib_deps = EEPROM, FlexCAN
[env:LaunchPad_tm4c1294ncpdt]
platform = titiva
framework = energia
board = lptm4c1294ncpdt
lib_deps = EEPROM
;Not currently working
;[env:LaunchPad_tm4c1294ncpdt]
;platform = titiva
;framework = energia
;board = lptm4c1294ncpdt
;lib_deps = EEPROM
[env:genericSTM32F103RB]
platform = ststm32

View File

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<msq xmlns="http://www.msefi.com/:msq">
<bibliography author="TunerStudio MS(Beta) 3.0.22 - EFI Analytics, Inc." tuneComment="" writeDate="Sat May 06 23:43:36 AEST 2017"/>
<versionInfo fileFormat="5.0" firmwareInfo="Speeduino+2017.03" nPages="10" signature="speeduino 201704"/>
<bibliography author="TunerStudio MS(Beta) 3.0.27 - EFI Analytics, Inc." tuneComment="" writeDate="Sun Jul 30 23:07:21 AEST 2017"/>
<versionInfo fileFormat="5.0" firmwareInfo="Speeduino+2017.06" nPages="11" signature="speeduino 201707"/>
<page>
<pcVariable name="tsCanId">"0"</pcVariable>
<pcVariable name="tsCanId">"CAN ID 0"</pcVariable>
</page>
<page number="0" size="288">
<constant cols="16" digits="0" name="veTable" rows="16" units="%">
@ -62,8 +62,8 @@
</constant>
</page>
<page number="1" size="64">
<constant digits="1" name="unused2-1" units="ms">5.0</constant>
<constant digits="1" name="unused2-2" units="ms">2.3</constant>
<constant digits="0" name="flexBoostLow" units="kPa">0.0</constant>
<constant digits="0" name="flexBoostHigh" units="kPa">50.0</constant>
<constant digits="0" name="asePct" units="%">25.0</constant>
<constant digits="0" name="aseCount" units="s">8.0</constant>
<constant cols="1" digits="0" name="wueRates" rows="10" units="%">
@ -121,10 +121,10 @@
<constant name="algorithm">"Speed Density"</constant>
<constant name="baroCorr">"Off"</constant>
<constant name="injLayout">"Paired"</constant>
<constant name="canEnable">"Disable"</constant>
<constant name="perToothIgn">"No"</constant>
<constant name="unused2-38h">"No"</constant>
<constant digits="1" name="primePulse" units="ms">1.0</constant>
<constant digits="0" name="dutyLim" units="%">85.0</constant>
<constant digits="0" name="dutyLim" units="%">90.0</constant>
<constant digits="0" name="flexFreqLow" units="Hz">50.0</constant>
<constant digits="0" name="flexFreqHigh" units="Hz">150.0</constant>
<constant digits="0" name="boostMaxDuty" units="%">100.0</constant>
@ -214,6 +214,7 @@
<constant name="TrigEdgeSec">"Leading"</constant>
<constant name="fuelPumpPin">"Board Default"</constant>
<constant name="useResync">"No"</constant>
<constant digits="1" name="sparkDur" units="ms">1.0</constant>
<constant digits="0" name="IdleAdvRPM" units="RPM">3200.0</constant>
<constant digits="1" name="IdleAdvCLT" units="C">-21.0</constant>
<constant digits="0" name="IdleDelayTime" units="sec">38.0</constant>
@ -365,7 +366,7 @@
<constant digits="0" name="egoRPM" units="rpm">1200.0</constant>
<constant digits="0" name="egoTPSMax" units="%">70.0</constant>
<constant name="vvtPin">"Board Default"</constant>
<constant name="unused6-13e">"ONE"</constant>
<constant name="useExtBaro">"No"</constant>
<constant name="unused6-13f">"ONE"</constant>
<constant name="boostPin">"Board Default"</constant>
<constant name="unused6-14e">"ONE"</constant>
@ -428,10 +429,7 @@
<constant name="lnchPullRes">"Pullup"</constant>
<constant name="fuelTrimEnabled">"No"</constant>
<constant name="flatSEnable">"No"</constant>
<constant name="unused6-60e">"ONE"</constant>
<constant name="unused6-60f">"ONE"</constant>
<constant name="unused6-60g">"ONE"</constant>
<constant name="unused6-60h">"ONE"</constant>
<constant name="baroPin">"A0"</constant>
<constant digits="0" name="flatSSoftWin" units="rpm">400.0</constant>
<constant digits="0" name="flatSRetard" units="deg">5.0</constant>
<constant digits="0" name="flatSArm" units="rpm">2000.0</constant>
@ -684,71 +682,109 @@
</constant>
</page>
<page number="9" size="128">
<constant digits="0" name="unused10_41">255.0</constant>
<constant digits="0" name="unused10_42">255.0</constant>
<constant digits="0" name="unused10_43">255.0</constant>
<constant digits="0" name="unused10_44">255.0</constant>
<constant digits="0" name="unused10_45">255.0</constant>
<constant digits="0" name="unused10_46">255.0</constant>
<constant digits="0" name="unused10_47">255.0</constant>
<constant digits="0" name="unused10_48">255.0</constant>
<constant digits="0" name="unused10_49">255.0</constant>
<constant digits="0" name="unused10_51">255.0</constant>
<constant digits="0" name="unused10_52">255.0</constant>
<constant name="enable_canbus">"Disable"</constant>
<constant name="enable_candata_in">"On"</constant>
<constant name="caninput_sel0">"Off"</constant>
<constant name="caninput_sel1">"On"</constant>
<constant name="caninput_sel2">"On"</constant>
<constant name="caninput_sel3">"On"</constant>
<constant name="caninput_sel4">"On"</constant>
<constant name="caninput_sel5">"On"</constant>
<constant name="caninput_sel6">"On"</constant>
<constant name="caninput_sel7">"On"</constant>
<constant name="caninput_sel8">"On"</constant>
<constant name="caninput_sel9">"Off"</constant>
<constant name="caninput_sel10">"Off"</constant>
<constant name="caninput_sel11">"Off"</constant>
<constant name="caninput_sel12">"Off"</constant>
<constant name="caninput_sel13">"Off"</constant>
<constant name="caninput_sel14">"Off"</constant>
<constant name="caninput_sel15">"Off"</constant>
<constant name="caninput_param_group0">"blank"</constant>
<constant name="caninput_param_group1">"blank"</constant>
<constant name="caninput_param_group2">"blank"</constant>
<constant name="caninput_param_group3">"blank"</constant>
<constant name="caninput_param_group4">"blank"</constant>
<constant name="caninput_param_group5">"blank"</constant>
<constant name="caninput_param_group6">"blank"</constant>
<constant name="caninput_param_group7">"blank"</constant>
<constant name="caninput_param_group8">"blank"</constant>
<constant name="caninput_param_group9">"blank"</constant>
<constant name="caninput_param_group10">"blank"</constant>
<constant name="caninput_param_group11">"blank"</constant>
<constant name="caninput_param_group12">"blank"</constant>
<constant name="caninput_param_group13">"blank"</constant>
<constant name="caninput_param_group14">"blank"</constant>
<constant name="caninput_param_group15">"blank"</constant>
<constant name="caninput_param_start_byte0">"7"</constant>
<constant name="caninput_param_start_byte1">"0"</constant>
<constant name="caninput_param_start_byte2">"0"</constant>
<constant name="caninput_param_start_byte3">"0"</constant>
<constant name="caninput_param_start_byte4">"0"</constant>
<constant name="caninput_param_start_byte5">"0"</constant>
<constant name="caninput_param_start_byte6">"0"</constant>
<constant name="caninput_param_start_byte7">"0"</constant>
<constant name="caninput_param_start_byte8">"0"</constant>
<constant name="caninput_param_start_byte9">"7"</constant>
<constant name="caninput_param_start_byte10">"7"</constant>
<constant name="caninput_param_start_byte11">"7"</constant>
<constant name="caninput_param_start_byte12">"7"</constant>
<constant name="caninput_param_start_byte13">"7"</constant>
<constant name="caninput_param_start_byte14">"7"</constant>
<constant name="caninput_param_start_byte15">"7"</constant>
<constant name="caninput_param_num_bytes0">"1"</constant>
<constant name="caninput_param_num_bytes1">"1"</constant>
<constant name="caninput_param_num_bytes2">"1"</constant>
<constant name="caninput_param_num_bytes3">"1"</constant>
<constant name="caninput_param_num_bytes4">"1"</constant>
<constant name="caninput_param_num_bytes5">"1"</constant>
<constant name="caninput_param_num_bytes6">"1"</constant>
<constant name="caninput_param_num_bytes7">"1"</constant>
<constant name="caninput_param_num_bytes8">"1"</constant>
<constant name="caninput_param_num_bytes9">"1"</constant>
<constant name="caninput_param_num_bytes10">"1"</constant>
<constant name="caninput_param_num_bytes11">"1"</constant>
<constant name="caninput_param_num_bytes12">"1"</constant>
<constant name="caninput_param_num_bytes13">"1"</constant>
<constant name="caninput_param_num_bytes14">"1"</constant>
<constant name="caninput_param_num_bytes15">"1"</constant>
<constant digits="0" name="unused10_53">255.0</constant>
<constant digits="0" name="unused10_54">255.0</constant>
<constant digits="0" name="unused10_55">255.0</constant>
<constant digits="0" name="unused10_56">255.0</constant>
<constant digits="0" name="unused10_57">255.0</constant>
<constant digits="0" name="unused10_58">255.0</constant>
<constant digits="0" name="unused10_59">255.0</constant>
<constant digits="0" name="unused10_60">255.0</constant>
<constant digits="0" name="unused10_61">255.0</constant>
<constant digits="0" name="unused10_62">255.0</constant>
<constant digits="0" name="unused10_63">255.0</constant>
<constant digits="0" name="unused10_64">255.0</constant>
<constant digits="0" name="unused10_65">255.0</constant>
<constant digits="0" name="unused10_66">255.0</constant>
<constant digits="0" name="unused10_67">255.0</constant>
<constant digits="0" name="unused10_68">255.0</constant>
<constant digits="0" name="unused10_69">255.0</constant>
<constant digits="0" name="unused10_70">255.0</constant>
<constant digits="0" name="unused10_71">255.0</constant>
<constant digits="0" name="unused10_72">255.0</constant>
<constant digits="0" name="unused10_73">255.0</constant>
<constant digits="0" name="unused10_74">255.0</constant>
<constant digits="0" name="unused10_75">255.0</constant>
<constant digits="0" name="unused10_76">255.0</constant>
<constant digits="0" name="unused10_77">255.0</constant>
<constant digits="0" name="unused10_78">255.0</constant>
<constant digits="0" name="unused10_79">255.0</constant>
<constant digits="0" name="unused10_80">255.0</constant>
<constant digits="0" name="unused10_81">255.0</constant>
<constant digits="0" name="unused10_82">255.0</constant>
<constant digits="0" name="unused10_83">255.0</constant>
<constant digits="0" name="unused10_84">255.0</constant>
<constant digits="0" name="unused10_85">255.0</constant>
<constant digits="0" name="unused10_86">255.0</constant>
<constant digits="0" name="unused10_87">255.0</constant>
<constant digits="0" name="unused10_88">255.0</constant>
<constant digits="0" name="unused10_89">255.0</constant>
<constant digits="0" name="unused10_90">255.0</constant>
<constant digits="0" name="unused10_91">255.0</constant>
<constant digits="0" name="unused10_92">255.0</constant>
<constant digits="0" name="unused10_93">255.0</constant>
<constant digits="0" name="unused10_94">255.0</constant>
<constant digits="0" name="unused10_95">255.0</constant>
<constant name="enable_candata_out">"On"</constant>
<constant name="canoutput_sel0">"On"</constant>
<constant name="canoutput_sel1">"On"</constant>
<constant name="canoutput_sel2">"On"</constant>
<constant name="canoutput_sel3">"On"</constant>
<constant name="canoutput_sel4">"On"</constant>
<constant name="canoutput_sel5">"On"</constant>
<constant name="canoutput_sel6">"On"</constant>
<constant name="canoutput_sel7">"On"</constant>
<constant cols="1" digits="0" name="canoutput_param_group" rows="8">
65535.0
65535.0
65535.0
65535.0
65535.0
65535.0
65535.0
65535.0
</constant>
<constant name="canoutput_param_start_byte0">"7"</constant>
<constant name="canoutput_param_start_byte1">"0"</constant>
<constant name="canoutput_param_start_byte2">"0"</constant>
<constant name="canoutput_param_start_byte3">"0"</constant>
<constant name="canoutput_param_start_byte4">"0"</constant>
<constant name="canoutput_param_start_byte5">"0"</constant>
<constant name="canoutput_param_start_byte6">"0"</constant>
<constant name="canoutput_param_start_byte7">"0"</constant>
<constant digits="0" name="unused10_96">255.0</constant>
<constant digits="0" name="unused10_97">255.0</constant>
<constant digits="0" name="unused10_98">255.0</constant>
<constant digits="0" name="unused10_99">255.0</constant>
<constant digits="0" name="unused10_100">255.0</constant>
<constant digits="0" name="unused10_101">255.0</constant>
<constant digits="0" name="unused10_102">255.0</constant>
<constant digits="0" name="unused10_103">255.0</constant>
<constant digits="0" name="unused10_104">255.0</constant>
<constant digits="0" name="unused10_105">255.0</constant>
<constant digits="0" name="unused10_106">255.0</constant>
<constant name="speeduino_tsCanId">"CAN ID 0"</constant>
<constant name="true_address">"0x101"</constant>
<constant name="realtime_base_address">"0x201"</constant>
<constant name="obd_address">"0x2FF"</constant>
<constant digits="0" name="unused10_107">255.0</constant>
<constant digits="0" name="unused10_108">255.0</constant>
<constant digits="0" name="unused10_109">255.0</constant>
@ -771,11 +807,26 @@
<constant digits="0" name="unused10_126">255.0</constant>
<constant digits="0" name="unused10_127">255.0</constant>
</page>
<page number="10" size="192">
<constant cols="1" digits="0" name="crankingEnrichBins" rows="4" units="C">
-40.0
0.0
30.0
70.0
</constant>
<constant cols="1" digits="0" name="crankingEnrichValues" rows="4" units="%">
138.0
115.0
105.0
100.0
</constant>
</page>
<settings Comment="These setting are only used if this msq is opened without a project.">
<setting name="enablehardware_test_OFF" value="enablehardware_test_OFF"/>
<setting name="SPEED_DENSITY" value="SPEED_DENSITY"/>
<setting name="CAN_COMMANDS_OFF" value="CAN_COMMANDS_OFF"/>
<setting name="CELSIUS" value="CELSIUS"/>
<setting name="AFR" value="AFR"/>
</settings>
<userComments Comment="These are user comments that can be related to a particular setting or dialog."/>
</msq>

File diff suppressed because it is too large Load Diff

View File

@ -1,9 +1,13 @@
include <arduino.scad>
$fn=50;
height=1;
hole_radius=(3.3782/2)+0.5;
corner_radius=4.00;
//hole_radius=(3.3782/1);
//rotate([270,0,0]) translate([17,0,7.5]) arduino(MEGA);
module plate()
{
difference()
@ -22,12 +26,15 @@ module plate()
translate([95.02,45,-5]) cylinder(r=hole_radius, h=10);
//USB cutout
USB_height = 11;
translate([-corner_radius+29.3,-corner_radius+13,-5]) cube([14,USB_height,10]);
USB_height = 12;
translate([-corner_radius+28.5,-corner_radius+12.5,-5]) cube([15,USB_height,10]);
//Arduino power cutout
//translate([-corner_radius+66.3,-corner_radius+18.5,0]) cube([10,13,11],center=true); //right side is x = 45.175, width = 8.9
//MAP cutout
//translate([20,110,screw_window_z+screw_window_height/2-2]) rotate ([90,0,0]) cylinder(r=3,h=screw_window_height);
translate([-corner_radius+90,-corner_radius+15,-5]) cylinder(r=3,h=10);
translate([-corner_radius+87,-corner_radius+15,-5]) cylinder(r=5.5,h=10);
//Main loom cutout
loom_width=84;

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 MiB

After

Width:  |  Height:  |  Size: 1.8 MiB

View File

@ -0,0 +1 @@
Part/Designator,Manufacture Part Number/Seeed SKU,Quantity "IC1,IC2",LMV324LIDT,2 "R1,R3,R5,R7,R9,R11,R13,R15",TNPW0805180KBEEA,8 "R2,R4,R6,R8,R10,R12,R14,R16",RT0805BRD07330KL,8 Dual row connector,PPTC182LFBN-RC,1 8 position headers,PPTC081LFBN-RC,5 10 position header,PPTC101LFBN-RC,1
Can't render this file because it contains an unexpected character in line 1 and column 60.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 184 KiB

After

Width:  |  Height:  |  Size: 240 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 612 KiB

After

Width:  |  Height:  |  Size: 645 KiB

View File

@ -8,7 +8,7 @@ G04 CONTOUR ON CENTER OF CONTOUR VECTOR*
%MOIN*%
%OFA0B0*%
%SFA1.0B1.0*%
%ADD10R,4.000010X2.088890*%
%ADD10R,3.937010X2.088890*%
%ADD11C,0.008000*%
%ADD10C,0.008*%
%LNCONTOUR*%
@ -17,8 +17,8 @@ G70*
G54D10*
G54D11*
X4Y2085D02*
X3996Y2085D01*
X3996Y4D01*
X3933Y2085D01*
X3933Y4D01*
X4Y4D01*
X4Y2085D01*
D02*

View File

@ -0,0 +1,26 @@
G04 MADE WITH FRITZING*
G04 WWW.FRITZING.ORG*
G04 DOUBLE SIDED*
G04 HOLES PLATED*
G04 CONTOUR ON CENTER OF CONTOUR VECTOR*
%ASAXBY*%
%FSLAX23Y23*%
%MOIN*%
%OFA0B0*%
%SFA1.0B1.0*%
%ADD10R,3.937010X2.088890*%
%ADD11C,0.008000*%
%ADD10C,0.008*%
%LNCONTOUR*%
G90*
G70*
G54D10*
G54D11*
X4Y2085D02*
X3933Y2085D01*
X3933Y4D01*
X4Y4D01*
X4Y2085D01*
D02*
G04 End of contour*
M02*

View File

@ -7,179 +7,189 @@ T101C0.038194
T102C0.015748
%
T100
X001277Y015166
X003277Y015166
X005277Y015166
X007277Y015166
X009277Y015166
X019277Y012166
X006277Y015166
X008277Y015166
X014277Y009166
X012277Y009166
X010277Y009166
X019277Y009166
X017277Y009166
X015277Y009166
X013277Y009166
X011277Y009166
X018277Y009166
X016277Y009166
X019277Y010166
X010277Y015166
X012277Y015166
X014277Y015166
X011277Y015166
X013277Y015166
X015277Y015166
X017277Y015166
X019277Y015166
X016277Y015166
X018277Y015166
X024277Y009166
X022277Y009166
X020277Y009166
X023277Y009166
X021277Y009166
X019277Y013166
X020277Y015166
X022277Y015166
X024277Y015166
X021277Y015166
X023277Y015166
X019277Y011166
X004277Y009166
X002277Y009166
X019277Y014166
X009277Y009166
X007277Y009166
X005277Y009166
X003277Y009166
X001277Y009166
X008277Y009166
X006277Y009166
X002277Y015166
X004277Y015166
X002021Y015166
X019021Y014166
X009021Y009166
X001021Y015166
X003021Y015166
X005021Y015166
X007021Y015166
X004021Y015166
X006021Y015166
X008021Y015166
X012021Y009166
X010021Y009166
X009021Y015166
X019021Y012166
X017021Y009166
X015021Y009166
X013021Y009166
X011021Y009166
X018021Y009166
X016021Y009166
X014021Y009166
X010021Y015166
X012021Y015166
X007021Y003416
X005021Y003416
X003021Y003416
X019021Y009166
X011021Y015166
X013021Y015166
X015021Y015166
X017021Y015166
X006021Y003416
X004021Y003416
X019021Y010166
X014021Y015166
X016021Y015166
X018021Y015166
X022021Y009166
X020021Y009166
X019021Y015166
X023021Y009166
X021021Y009166
X024021Y009166
X020021Y015166
X022021Y015166
X021021Y015166
X023021Y015166
X019021Y013166
X024021Y015166
X019021Y011166
X002021Y009166
X007021Y009166
X005021Y009166
X003021Y009166
X001021Y009166
X008021Y009166
X006021Y009166
X004021Y009166
T101
X030027Y019916
X032027Y000916
X012427Y019916
X038027Y018916
X038027Y002916
X017027Y000916
X037027Y013916
X024027Y019916
X026027Y000916
X038027Y017916
X033027Y019916
X015427Y019916
X037027Y009916
X035027Y000916
X037027Y012916
X018027Y019916
X029027Y000916
X038027Y016916
X027027Y019916
X009427Y019916
X037027Y008916
X037027Y011916
X012027Y000916
X021027Y000916
X038027Y015916
X037027Y007916
X010427Y019916
X030027Y000916
X037027Y010916
X015027Y000916
X022027Y019916
X038027Y014916
X024027Y000916
X037027Y006916
X031027Y019916
X013427Y019916
X033027Y000916
X038027Y013916
X018027Y000916
X037027Y005916
X025027Y019916
X007427Y019916
X027027Y000916
X034027Y019916
X038027Y009916
X016427Y019916
X036027Y000916
X038027Y012916
X037027Y004916
X019027Y019916
X028027Y019916
X038027Y008916
X037027Y019916
X038027Y011916
X013027Y000916
X037027Y003916
X020027Y019916
X022027Y000916
X038027Y007916
X011427Y019916
X031027Y000916
X037027Y018916
X038027Y010916
X037027Y002916
X016027Y000916
X023027Y019916
X038027Y006916
X025027Y000916
X032027Y019916
X037027Y017916
X034027Y000916
X014427Y019916
X038027Y005916
X008427Y019916
X037027Y016916
X011027Y000916
X038027Y004916
X020027Y000916
X037027Y015916
X029027Y019916
X038027Y019916
X014027Y000916
X038027Y003916
X021027Y019916
X023027Y000916
X037027Y014916
X037021Y011916
X012021Y000916
X021021Y000916
X038021Y015916
X037021Y007916
X010421Y019916
X030021Y000916
X037021Y010916
X015021Y000916
X038021Y014916
X022021Y019916
X024021Y000916
X037021Y006916
X031021Y019916
X013421Y019916
X033021Y000916
X038021Y013916
X018021Y000916
X037021Y005916
X025021Y019916
X007421Y019916
X027021Y000916
X034021Y019916
X038021Y009916
X016421Y019916
X036021Y000916
X038021Y012916
X037021Y004916
X019021Y019916
X028021Y019916
X038021Y008916
X037021Y019916
X038021Y011916
X013021Y000916
X037021Y003916
X020021Y019916
X022021Y000916
X038021Y007916
X011421Y019916
X031021Y000916
X037021Y018916
X038021Y010916
X037021Y002916
X016021Y000916
X023021Y019916
X038021Y006916
X025021Y000916
X032021Y019916
X037021Y017916
X034021Y000916
X014421Y019916
X038021Y005916
X008421Y019916
X037021Y016916
X011021Y000916
X038021Y004916
X020021Y000916
X037021Y015916
X029021Y019916
X038021Y019916
X014021Y000916
X038021Y003916
X021021Y019916
X023021Y000916
X037021Y014916
X030021Y019916
X032021Y000916
X012421Y019916
X038021Y018916
X038021Y002916
X017021Y000916
X037021Y013916
X024021Y019916
X026021Y000916
X038021Y017916
X033021Y019916
X015421Y019916
X037021Y009916
X035021Y000916
X037021Y012916
X018021Y019916
X029021Y000916
X038021Y016916
X027021Y019916
X009421Y019916
X037021Y008916
T102
X014777Y001666
X017527Y004666
X019027Y000916
X009527Y003416
X009527Y001166
X026527Y004166
X020277Y010666
X038777Y001166
X024527Y004166
X031027Y004666
X018277Y004666
X023527Y004166
X014777Y004166
X014777Y003666
X020527Y004166
X035527Y011166
X016527Y000416
X030777Y007666
X032277Y008666
X032277Y012666
X014777Y003166
X037277Y001166
X025527Y004166
X028777Y012416
X014777Y002666
X019527Y004166
X022527Y004166
X028527Y008666
X030777Y009666
X021527Y004166
X014777Y005166
X014777Y002166
X014777Y004666
X024021Y009916
X038521Y001166
X014521Y005166
X032021Y008666
X014521Y001666
X030521Y007666
X019271Y004166
X014521Y003166
X034771Y011916
X014521Y004666
X032021Y012666
X024271Y004166
X022271Y004166
X020271Y004166
X037021Y001166
X025271Y004166
X023271Y004166
X021271Y004166
X018771Y004666
X014521Y002666
X026271Y004166
X021646Y010666
X009271Y002916
X018771Y000916
X014521Y004166
X009271Y001166
X005771Y011666
X014021Y004916
X028521Y012416
X014521Y002166
X028271Y008666
X017271Y004666
X018021Y004666
X030771Y004666
X014521Y003666
X030521Y009666
X016521Y000416
X027771Y004166
T00
M30

View File

@ -15,180 +15,190 @@ G04 CONTOUR ON CENTER OF CONTOUR VECTOR*
G90*
G70*
G54D10*
X3228Y867D03*
X1478Y467D03*
X1478Y417D03*
X1478Y367D03*
X1478Y317D03*
X1478Y517D03*
X1478Y267D03*
X1478Y217D03*
X1478Y167D03*
X2878Y1242D03*
X3228Y1267D03*
X2053Y417D03*
X1953Y417D03*
X2153Y417D03*
X2253Y417D03*
X2353Y417D03*
X2453Y417D03*
X2553Y417D03*
X2653Y417D03*
X1753Y467D03*
X1828Y467D03*
X3078Y767D03*
X3103Y467D03*
X3078Y967D03*
X3728Y117D03*
X3878Y117D03*
X2028Y1067D03*
X953Y117D03*
X953Y342D03*
X1903Y92D03*
X3553Y1117D03*
X2853Y867D03*
X1877Y467D03*
X2777Y417D03*
X577Y1167D03*
X1452Y367D03*
X2402Y992D03*
X3202Y867D03*
X1452Y517D03*
X1452Y467D03*
X1452Y417D03*
X1452Y317D03*
X1402Y492D03*
X1452Y267D03*
X1452Y217D03*
X1452Y167D03*
X2852Y1242D03*
X3202Y1267D03*
X2027Y417D03*
X1927Y417D03*
X2127Y417D03*
X2227Y417D03*
X2327Y417D03*
X2427Y417D03*
X2527Y417D03*
X2627Y417D03*
X1727Y467D03*
X1802Y467D03*
X3052Y767D03*
X3077Y467D03*
X3052Y967D03*
X3702Y117D03*
X3852Y117D03*
X2165Y1067D03*
X927Y117D03*
X927Y292D03*
X1877Y92D03*
X3477Y1192D03*
X2827Y867D03*
G54D11*
X3003Y92D03*
X1403Y92D03*
X3103Y92D03*
X3203Y92D03*
X3303Y92D03*
X3403Y92D03*
X3703Y1492D03*
X3503Y92D03*
X3603Y92D03*
X1443Y1992D03*
X2003Y92D03*
X2103Y92D03*
X2203Y92D03*
X2303Y92D03*
X3703Y692D03*
X2403Y92D03*
X2503Y92D03*
X2603Y92D03*
X2703Y92D03*
X2203Y1992D03*
X3703Y1892D03*
X3703Y1092D03*
X3703Y292D03*
X1043Y1992D03*
X1803Y92D03*
X1803Y1992D03*
X3703Y1692D03*
X3703Y1292D03*
X3703Y892D03*
X3403Y1992D03*
X3703Y492D03*
X3303Y1992D03*
X3203Y1992D03*
X3103Y1992D03*
X3003Y1992D03*
X2903Y1992D03*
X2803Y1992D03*
X2703Y1992D03*
X843Y1992D03*
X1243Y1992D03*
X1643Y1992D03*
X1203Y92D03*
X1603Y92D03*
X2403Y1992D03*
X2003Y1992D03*
X3703Y1992D03*
X3703Y1792D03*
X3703Y1592D03*
X3703Y1392D03*
X3703Y1192D03*
X3703Y992D03*
X3703Y792D03*
X3703Y592D03*
X3703Y392D03*
X743Y1992D03*
X943Y1992D03*
X1143Y1992D03*
X1343Y1992D03*
X1543Y1992D03*
X1103Y92D03*
X1303Y92D03*
X1503Y92D03*
X1703Y92D03*
X2503Y1992D03*
X2303Y1992D03*
X2103Y1992D03*
X1903Y1992D03*
X3803Y1992D03*
X3803Y1892D03*
X3803Y1792D03*
X3803Y1692D03*
X3803Y1592D03*
X3803Y1492D03*
X3803Y1392D03*
X3803Y1292D03*
X3803Y1192D03*
X3803Y1092D03*
X3803Y992D03*
X3803Y892D03*
X3803Y792D03*
X3803Y692D03*
X3803Y592D03*
X3803Y492D03*
X3803Y392D03*
X3803Y292D03*
X2903Y92D03*
X3002Y92D03*
X1402Y92D03*
X3102Y92D03*
X3202Y92D03*
X3302Y92D03*
X3402Y92D03*
X3702Y1492D03*
X3502Y92D03*
X3602Y92D03*
X1442Y1992D03*
X2002Y92D03*
X2102Y92D03*
X2202Y92D03*
X2302Y92D03*
X3702Y692D03*
X2402Y92D03*
X2502Y92D03*
X2602Y92D03*
X2702Y92D03*
X2202Y1992D03*
X3702Y1892D03*
X3702Y1092D03*
X3702Y292D03*
X1042Y1992D03*
X1802Y92D03*
X1802Y1992D03*
X3702Y1692D03*
X3702Y1292D03*
X3702Y892D03*
X3402Y1992D03*
X3702Y492D03*
X3302Y1992D03*
X3202Y1992D03*
X3102Y1992D03*
X3002Y1992D03*
X2902Y1992D03*
X2802Y1992D03*
X2702Y1992D03*
X842Y1992D03*
X1242Y1992D03*
X1642Y1992D03*
X1202Y92D03*
X1602Y92D03*
X2402Y1992D03*
X2002Y1992D03*
X3702Y1992D03*
X3702Y1792D03*
X3702Y1592D03*
X3702Y1392D03*
X3702Y1192D03*
X3702Y992D03*
X3702Y792D03*
X3702Y592D03*
X3702Y392D03*
X742Y1992D03*
X942Y1992D03*
X1142Y1992D03*
X1342Y1992D03*
X1542Y1992D03*
X1102Y92D03*
X1302Y92D03*
X1502Y92D03*
X1702Y92D03*
X2502Y1992D03*
X2302Y1992D03*
X2102Y1992D03*
X1902Y1992D03*
X3802Y1992D03*
X3802Y1892D03*
X3802Y1792D03*
X3802Y1692D03*
X3802Y1592D03*
X3802Y1492D03*
X3802Y1392D03*
X3802Y1292D03*
X3802Y1192D03*
X3802Y1092D03*
X3802Y992D03*
X3802Y892D03*
X3802Y792D03*
X3802Y692D03*
X3802Y592D03*
X3802Y492D03*
X3802Y392D03*
X3802Y292D03*
X2902Y92D03*
G54D12*
X2428Y1517D03*
X2328Y1517D03*
X2228Y1517D03*
X2128Y1517D03*
X2028Y1517D03*
X1928Y1517D03*
X1828Y1517D03*
X1728Y1517D03*
X1628Y1517D03*
X1528Y1517D03*
X1428Y1517D03*
X1328Y1517D03*
X1228Y1517D03*
X1128Y1517D03*
X1028Y1517D03*
X928Y1517D03*
X828Y1517D03*
X728Y1517D03*
X628Y1517D03*
X528Y1517D03*
X428Y1517D03*
X328Y1517D03*
X228Y1517D03*
X128Y1517D03*
X128Y917D03*
X228Y917D03*
X328Y917D03*
X428Y917D03*
X528Y917D03*
X628Y917D03*
X728Y917D03*
X828Y917D03*
X928Y917D03*
X1028Y917D03*
X1128Y917D03*
X1228Y917D03*
X1328Y917D03*
X1428Y917D03*
X1528Y917D03*
X1628Y917D03*
X1728Y917D03*
X1828Y917D03*
X1928Y917D03*
X2028Y917D03*
X2128Y917D03*
X2228Y917D03*
X2328Y917D03*
X2428Y917D03*
X1928Y1417D03*
X1928Y1317D03*
X1928Y1217D03*
X1928Y1117D03*
X1928Y1017D03*
X2402Y1517D03*
X2302Y1517D03*
X2202Y1517D03*
X2102Y1517D03*
X2002Y1517D03*
X1902Y1517D03*
X1802Y1517D03*
X1702Y1517D03*
X1602Y1517D03*
X1502Y1517D03*
X1402Y1517D03*
X1302Y1517D03*
X1202Y1517D03*
X1102Y1517D03*
X1002Y1517D03*
X902Y1517D03*
X802Y1517D03*
X702Y1517D03*
X602Y1517D03*
X502Y1517D03*
X402Y1517D03*
X302Y1517D03*
X202Y1517D03*
X102Y1517D03*
X302Y342D03*
X402Y342D03*
X502Y342D03*
X602Y342D03*
X702Y342D03*
X102Y917D03*
X202Y917D03*
X302Y917D03*
X402Y917D03*
X502Y917D03*
X602Y917D03*
X702Y917D03*
X802Y917D03*
X902Y917D03*
X1002Y917D03*
X1102Y917D03*
X1202Y917D03*
X1302Y917D03*
X1402Y917D03*
X1502Y917D03*
X1602Y917D03*
X1702Y917D03*
X1802Y917D03*
X1902Y917D03*
X2002Y917D03*
X2102Y917D03*
X2202Y917D03*
X2302Y917D03*
X2402Y917D03*
X1902Y1417D03*
X1902Y1317D03*
X1902Y1217D03*
X1902Y1117D03*
X1902Y1017D03*
G54D10*
X1653Y42D03*
X1652Y42D03*
G04 End of Mask0*
M02*

View File

@ -17,242 +17,252 @@ G04 CONTOUR ON CENTER OF CONTOUR VECTOR*
G90*
G70*
G54D10*
X3228Y867D03*
X1478Y467D03*
X1478Y417D03*
X1478Y367D03*
X1478Y317D03*
X1478Y517D03*
X1478Y267D03*
X1478Y217D03*
X1478Y167D03*
X2878Y1242D03*
X3228Y1267D03*
X2053Y417D03*
X1953Y417D03*
X2153Y417D03*
X2253Y417D03*
X2353Y417D03*
X2453Y417D03*
X2553Y417D03*
X2653Y417D03*
X1753Y467D03*
X1828Y467D03*
X3078Y767D03*
X3103Y467D03*
X3078Y967D03*
X3728Y117D03*
X3878Y117D03*
X2028Y1067D03*
X953Y117D03*
X953Y342D03*
X1903Y92D03*
X3553Y1117D03*
X2853Y867D03*
X1877Y467D03*
X2777Y417D03*
X577Y1167D03*
X1452Y367D03*
X2402Y992D03*
X3202Y867D03*
X1452Y517D03*
X1452Y467D03*
X1452Y417D03*
X1452Y317D03*
X1402Y492D03*
X1452Y267D03*
X1452Y217D03*
X1452Y167D03*
X2852Y1242D03*
X3202Y1267D03*
X2027Y417D03*
X1927Y417D03*
X2127Y417D03*
X2227Y417D03*
X2327Y417D03*
X2427Y417D03*
X2527Y417D03*
X2627Y417D03*
X1727Y467D03*
X1802Y467D03*
X3052Y767D03*
X3077Y467D03*
X3052Y967D03*
X3702Y117D03*
X3852Y117D03*
X2165Y1067D03*
X927Y117D03*
X927Y292D03*
X1877Y92D03*
X3477Y1192D03*
X2827Y867D03*
G54D11*
X3003Y92D03*
X1403Y92D03*
X3103Y92D03*
X3203Y92D03*
X3303Y92D03*
X3403Y92D03*
X3703Y1492D03*
X3503Y92D03*
X3603Y92D03*
X1443Y1992D03*
X2003Y92D03*
X2103Y92D03*
X2203Y92D03*
X2303Y92D03*
X3703Y692D03*
X2403Y92D03*
X2503Y92D03*
X2603Y92D03*
X2703Y92D03*
X2203Y1992D03*
X3703Y1892D03*
X3703Y1092D03*
X3703Y292D03*
X1043Y1992D03*
X1803Y92D03*
X1803Y1992D03*
X3703Y1692D03*
X3703Y1292D03*
X3703Y892D03*
X3403Y1992D03*
X3703Y492D03*
X3303Y1992D03*
X3203Y1992D03*
X3103Y1992D03*
X3003Y1992D03*
X2903Y1992D03*
X2803Y1992D03*
X2703Y1992D03*
X843Y1992D03*
X1243Y1992D03*
X1643Y1992D03*
X1203Y92D03*
X1603Y92D03*
X2403Y1992D03*
X2003Y1992D03*
X3703Y1992D03*
X3703Y1792D03*
X3703Y1592D03*
X3703Y1392D03*
X3703Y1192D03*
X3703Y992D03*
X3703Y792D03*
X3703Y592D03*
X3703Y392D03*
X743Y1992D03*
X943Y1992D03*
X1143Y1992D03*
X1343Y1992D03*
X1543Y1992D03*
X1103Y92D03*
X1303Y92D03*
X1503Y92D03*
X1703Y92D03*
X2503Y1992D03*
X2303Y1992D03*
X2103Y1992D03*
X1903Y1992D03*
X3803Y1992D03*
X3803Y1892D03*
X3803Y1792D03*
X3803Y1692D03*
X3803Y1592D03*
X3803Y1492D03*
X3803Y1392D03*
X3803Y1292D03*
X3803Y1192D03*
X3803Y1092D03*
X3803Y992D03*
X3803Y892D03*
X3803Y792D03*
X3803Y692D03*
X3803Y592D03*
X3803Y492D03*
X3803Y392D03*
X3803Y292D03*
X2903Y92D03*
X3002Y92D03*
X1402Y92D03*
X3102Y92D03*
X3202Y92D03*
X3302Y92D03*
X3402Y92D03*
X3702Y1492D03*
X3502Y92D03*
X3602Y92D03*
X1442Y1992D03*
X2002Y92D03*
X2102Y92D03*
X2202Y92D03*
X2302Y92D03*
X3702Y692D03*
X2402Y92D03*
X2502Y92D03*
X2602Y92D03*
X2702Y92D03*
X2202Y1992D03*
X3702Y1892D03*
X3702Y1092D03*
X3702Y292D03*
X1042Y1992D03*
X1802Y92D03*
X1802Y1992D03*
X3702Y1692D03*
X3702Y1292D03*
X3702Y892D03*
X3402Y1992D03*
X3702Y492D03*
X3302Y1992D03*
X3202Y1992D03*
X3102Y1992D03*
X3002Y1992D03*
X2902Y1992D03*
X2802Y1992D03*
X2702Y1992D03*
X842Y1992D03*
X1242Y1992D03*
X1642Y1992D03*
X1202Y92D03*
X1602Y92D03*
X2402Y1992D03*
X2002Y1992D03*
X3702Y1992D03*
X3702Y1792D03*
X3702Y1592D03*
X3702Y1392D03*
X3702Y1192D03*
X3702Y992D03*
X3702Y792D03*
X3702Y592D03*
X3702Y392D03*
X742Y1992D03*
X942Y1992D03*
X1142Y1992D03*
X1342Y1992D03*
X1542Y1992D03*
X1102Y92D03*
X1302Y92D03*
X1502Y92D03*
X1702Y92D03*
X2502Y1992D03*
X2302Y1992D03*
X2102Y1992D03*
X1902Y1992D03*
X3802Y1992D03*
X3802Y1892D03*
X3802Y1792D03*
X3802Y1692D03*
X3802Y1592D03*
X3802Y1492D03*
X3802Y1392D03*
X3802Y1292D03*
X3802Y1192D03*
X3802Y1092D03*
X3802Y992D03*
X3802Y892D03*
X3802Y792D03*
X3802Y692D03*
X3802Y592D03*
X3802Y492D03*
X3802Y392D03*
X3802Y292D03*
X2902Y92D03*
G54D12*
X2428Y1517D03*
X2328Y1517D03*
X2228Y1517D03*
X2128Y1517D03*
X2028Y1517D03*
X1928Y1517D03*
X1828Y1517D03*
X1728Y1517D03*
X1628Y1517D03*
X1528Y1517D03*
X1428Y1517D03*
X1328Y1517D03*
X1228Y1517D03*
X1128Y1517D03*
X1028Y1517D03*
X928Y1517D03*
X828Y1517D03*
X728Y1517D03*
X628Y1517D03*
X528Y1517D03*
X428Y1517D03*
X328Y1517D03*
X228Y1517D03*
X128Y1517D03*
X128Y917D03*
X228Y917D03*
X328Y917D03*
X428Y917D03*
X528Y917D03*
X628Y917D03*
X728Y917D03*
X828Y917D03*
X928Y917D03*
X1028Y917D03*
X1128Y917D03*
X1228Y917D03*
X1328Y917D03*
X1428Y917D03*
X1528Y917D03*
X1628Y917D03*
X1728Y917D03*
X1828Y917D03*
X1928Y917D03*
X2028Y917D03*
X2128Y917D03*
X2228Y917D03*
X2328Y917D03*
X2428Y917D03*
X1928Y1417D03*
X1928Y1317D03*
X1928Y1217D03*
X1928Y1117D03*
X1928Y1017D03*
X2402Y1517D03*
X2302Y1517D03*
X2202Y1517D03*
X2102Y1517D03*
X2002Y1517D03*
X1902Y1517D03*
X1802Y1517D03*
X1702Y1517D03*
X1602Y1517D03*
X1502Y1517D03*
X1402Y1517D03*
X1302Y1517D03*
X1202Y1517D03*
X1102Y1517D03*
X1002Y1517D03*
X902Y1517D03*
X802Y1517D03*
X702Y1517D03*
X602Y1517D03*
X502Y1517D03*
X402Y1517D03*
X302Y1517D03*
X202Y1517D03*
X102Y1517D03*
X302Y342D03*
X402Y342D03*
X502Y342D03*
X602Y342D03*
X702Y342D03*
X102Y917D03*
X202Y917D03*
X302Y917D03*
X402Y917D03*
X502Y917D03*
X602Y917D03*
X702Y917D03*
X802Y917D03*
X902Y917D03*
X1002Y917D03*
X1102Y917D03*
X1202Y917D03*
X1302Y917D03*
X1402Y917D03*
X1502Y917D03*
X1602Y917D03*
X1702Y917D03*
X1802Y917D03*
X1902Y917D03*
X2002Y917D03*
X2102Y917D03*
X2202Y917D03*
X2302Y917D03*
X2402Y917D03*
X1902Y1417D03*
X1902Y1317D03*
X1902Y1217D03*
X1902Y1117D03*
X1902Y1017D03*
G54D10*
X1653Y42D03*
X1652Y42D03*
G54D13*
X3078Y1117D03*
X3128Y1117D03*
X3178Y1117D03*
X3228Y1117D03*
X3278Y1117D03*
X3328Y1117D03*
X3378Y1117D03*
X3378Y1337D03*
X3328Y1337D03*
X3278Y1337D03*
X3228Y1337D03*
X3178Y1337D03*
X3128Y1337D03*
X3078Y1337D03*
X2528Y1117D03*
X2578Y1117D03*
X2628Y1117D03*
X2678Y1117D03*
X2728Y1117D03*
X2778Y1117D03*
X2828Y1117D03*
X2828Y1337D03*
X2778Y1337D03*
X2728Y1337D03*
X2678Y1337D03*
X2628Y1337D03*
X2578Y1337D03*
X2528Y1337D03*
X3052Y1117D03*
X3102Y1117D03*
X3152Y1117D03*
X3202Y1117D03*
X3252Y1117D03*
X3302Y1117D03*
X3352Y1117D03*
X3352Y1337D03*
X3302Y1337D03*
X3252Y1337D03*
X3202Y1337D03*
X3152Y1337D03*
X3102Y1337D03*
X3052Y1337D03*
X2502Y1117D03*
X2552Y1117D03*
X2602Y1117D03*
X2652Y1117D03*
X2702Y1117D03*
X2752Y1117D03*
X2802Y1117D03*
X2802Y1337D03*
X2752Y1337D03*
X2702Y1337D03*
X2652Y1337D03*
X2602Y1337D03*
X2552Y1337D03*
X2502Y1337D03*
G54D14*
X2703Y511D03*
X2703Y592D03*
X2303Y511D03*
X2303Y592D03*
X2703Y292D03*
X2703Y211D03*
X2303Y292D03*
X2303Y211D03*
X2603Y511D03*
X2603Y592D03*
X2203Y511D03*
X2203Y592D03*
X2603Y292D03*
X2603Y211D03*
X2203Y292D03*
X2203Y211D03*
X2403Y511D03*
X2403Y592D03*
X2003Y511D03*
X2003Y592D03*
X2403Y211D03*
X2403Y292D03*
X2003Y292D03*
X2003Y211D03*
X2503Y511D03*
X2503Y592D03*
X2103Y511D03*
X2103Y592D03*
X2503Y292D03*
X2503Y211D03*
X2103Y292D03*
X2103Y211D03*
X2677Y511D03*
X2677Y592D03*
X2277Y511D03*
X2277Y592D03*
X2677Y292D03*
X2677Y211D03*
X2277Y292D03*
X2277Y211D03*
X2577Y511D03*
X2577Y592D03*
X2177Y511D03*
X2177Y592D03*
X2577Y292D03*
X2577Y211D03*
X2177Y292D03*
X2177Y211D03*
X2377Y511D03*
X2377Y592D03*
X1977Y511D03*
X1977Y592D03*
X2377Y292D03*
X2377Y211D03*
X1977Y292D03*
X1977Y211D03*
X2477Y511D03*
X2477Y592D03*
X2077Y511D03*
X2077Y592D03*
X2477Y292D03*
X2477Y211D03*
X2077Y292D03*
X2077Y211D03*
G04 End of Mask1*
M02*

View File

@ -15,67 +15,67 @@ G04 CONTOUR ON CENTER OF CONTOUR VECTOR*
G90*
G70*
G54D10*
X3078Y1117D03*
X3128Y1117D03*
X3178Y1117D03*
X3228Y1117D03*
X3278Y1117D03*
X3328Y1117D03*
X3378Y1117D03*
X3378Y1337D03*
X3328Y1337D03*
X3278Y1337D03*
X3228Y1337D03*
X3178Y1337D03*
X3128Y1337D03*
X3078Y1337D03*
X2528Y1117D03*
X2578Y1117D03*
X2628Y1117D03*
X2678Y1117D03*
X2728Y1117D03*
X2778Y1117D03*
X2828Y1117D03*
X2828Y1337D03*
X2778Y1337D03*
X2728Y1337D03*
X2678Y1337D03*
X2628Y1337D03*
X2578Y1337D03*
X2528Y1337D03*
X3052Y1117D03*
X3102Y1117D03*
X3152Y1117D03*
X3202Y1117D03*
X3252Y1117D03*
X3302Y1117D03*
X3352Y1117D03*
X3352Y1337D03*
X3302Y1337D03*
X3252Y1337D03*
X3202Y1337D03*
X3152Y1337D03*
X3102Y1337D03*
X3052Y1337D03*
X2502Y1117D03*
X2552Y1117D03*
X2602Y1117D03*
X2652Y1117D03*
X2702Y1117D03*
X2752Y1117D03*
X2802Y1117D03*
X2802Y1337D03*
X2752Y1337D03*
X2702Y1337D03*
X2652Y1337D03*
X2602Y1337D03*
X2552Y1337D03*
X2502Y1337D03*
G54D11*
X2703Y511D03*
X2703Y592D03*
X2303Y511D03*
X2303Y592D03*
X2703Y292D03*
X2703Y211D03*
X2303Y292D03*
X2303Y211D03*
X2603Y511D03*
X2603Y592D03*
X2203Y511D03*
X2203Y592D03*
X2603Y292D03*
X2603Y211D03*
X2203Y292D03*
X2203Y211D03*
X2403Y511D03*
X2403Y592D03*
X2003Y511D03*
X2003Y592D03*
X2403Y211D03*
X2403Y292D03*
X2003Y292D03*
X2003Y211D03*
X2503Y511D03*
X2503Y592D03*
X2103Y511D03*
X2103Y592D03*
X2503Y292D03*
X2503Y211D03*
X2103Y292D03*
X2103Y211D03*
X2677Y511D03*
X2677Y592D03*
X2277Y511D03*
X2277Y592D03*
X2677Y292D03*
X2677Y211D03*
X2277Y292D03*
X2277Y211D03*
X2577Y511D03*
X2577Y592D03*
X2177Y511D03*
X2177Y592D03*
X2577Y292D03*
X2577Y211D03*
X2177Y292D03*
X2177Y211D03*
X2377Y511D03*
X2377Y592D03*
X1977Y511D03*
X1977Y592D03*
X2377Y292D03*
X2377Y211D03*
X1977Y292D03*
X1977Y211D03*
X2477Y511D03*
X2477Y592D03*
X2077Y511D03*
X2077Y592D03*
X2477Y292D03*
X2477Y211D03*
X2077Y292D03*
X2077Y211D03*
G54D12*
D02*
G04 End of PasteMask1*

View File

@ -4,7 +4,7 @@
*eMail=
*
*Project=Teensy 3.5 Adaptor
*Date=21:31:13
*Date=23:00:50
*CreatedBy=Fritzing 0.9.3b.04.19.5c895d327c44a3114e5fcc9d8260daf0cbb52806
*
*
@ -13,392 +13,472 @@
*Rotation in degree (0-360, math. pos.)
*
*No;Value;Package;X;Y;Rotation;Side;Name
1;;;51.4477;-27.6069;0;Bottom;Copper Fill288
2;;;52.1081;-10.2079;0;Bottom;Copper Fill323
3;;;30.2768;-51.4829;0;Bottom;Copper Fill154
4;;;95.3262;-26.4639;0;Bottom;Copper Fill234
5;;;95.3262;-36.6239;0;Bottom;Copper Fill208
6;;;40.9448;-46.7331;0;Bottom;Copper Fill29
7;;;47.0408;-51.4829;0;Bottom;Copper Fill11
8;;;12.9794;-43.0247;0;Bottom;Copper Fill186
9;;;78.5622;-24.6224;0;Bottom;Copper Fill104
10;;;22.5044;-41.1451;0;Bottom;Copper Fill194
11;;;41.9481;-0.7083;0;Bottom;Copper Fill84
12;;;24.5872;-3.0324;0;Bottom;Copper Fill134
13;;;95.3262;-11.2239;0;Bottom;Copper Fill76
14;;;50.6222;-20.9013;0;Bottom;Copper Fill241
15;330k;0805 [SMD];58.4905;-14.0032;-90;Top;R8
16;;;98.4377;-3.4769;0;Bottom;Copper Fill97
17;;;73.0955;-31.5384;0;Bottom;Via11
18;;;46.482;-32.4075;0;Bottom;Copper Fill224
19;;;94.6277;-2.5879;0;Bottom;Copper Fill114
20;;;67.7672;-10.6524;0;Bottom;Copper Fill143
21;;;29.2608;-3.2229;0;Bottom;Copper Fill81
22;;;25.1968;-51.4829;0;Bottom;Copper Fill152
23;;;95.3262;-8.6839;0;Bottom;Copper Fill78
24;330k;0805 [SMD];61.0305;-14.0032;-90;Top;R13
25;;;95.3262;-29.0039;0;Bottom;Copper Fill47
26;;;59.9694;-48.9683;0;Bottom;Copper Fill35
27;;;8.5344;-43.9899;0;Bottom;Copper Fill182
28;;;22.6568;-51.4829;0;Bottom;Copper Fill151
29;;;52.1405;-10.5834;0;Bottom;Via13
30;;;77.6732;-19.5424;0;Bottom;Copper Fill304
31;;;52.8828;-36.4969;0;Bottom;Copper Fill203
32;180k;0805 [SMD];63.5705;-6.38318;90;Top;R16
33;;;39.878;-7.6171;0;Bottom;Copper Fill273
34;;;9.56589;-15.1119;0;Bottom;TXT5
35;330k;0805 [SMD];55.9505;-14.0032;-90;Top;R6
36;;;32.6644;-21.8919;0;Bottom;Copper Fill62
37;;;52.2732;-15.3895;0;Bottom;Copper Fill262
38;;;25.1968;-51.4829;0;Bottom;Copper Fill3
39;;;77.6732;-19.5424;0;Bottom;Copper Fill111
40;;;58.293;-11.4525;0;Bottom;Copper Fill256
41;;;24.1681;-8.3029;0;Bottom;Copper Fill91
42;;;62.5348;-49.2985;0;Bottom;Copper Fill36
43;;;82.6008;-51.4829;0;Bottom;Copper Fill23
44;;THT;48.9656;-30.9033;0;Bottom;J3
45;;;23.7236;-8.722;0;Bottom;Copper Fill92
46;;;95.3262;-13.7639;0;Bottom;Copper Fill252
47;;;59.7281;-11.0969;0;Bottom;Copper Fill145
48;;;27.7368;-51.4829;0;Bottom;Copper Fill153
49;;;20.0152;-41.5007;0;Bottom;Copper Fill193
50;330k;0805 [SMD];66.1105;-14.0032;-90;Top;R11
51;;;79.1972;-11.9224;0;Bottom;Copper Fill302
52;;;57.4548;-48.6381;0;Bottom;Copper Fill34
53;;;97.3582;-7.452;0;Bottom;Copper Fill312
54;;;81.9855;-22.0134;0;Bottom;Via2
55;;;82.6008;-51.4829;0;Bottom;Copper Fill173
56;;;78.1755;-24.5534;0;Bottom;Via25
57;;;54.6805;-10.5834;0;Bottom;Via15
58;;;64.8081;-10.2079;0;Bottom;Copper Fill327
59;;;95.3262;-8.6839;0;Bottom;Copper Fill271
60;;;78.1177;-19.0979;0;Bottom;Copper Fill110
61;;;95.3262;-31.5439;0;Bottom;Copper Fill46
62;;;50.9133;-26.4583;0;Bottom;Part1
63;;;51.4477;-26.7179;0;Bottom;Copper Fill95
64;;;67.3805;-10.5834;0;Bottom;Via20
65;;;3.1877;-22.5015;0;Bottom;Copper Fill317
66;;;48.2981;-1.9529;0;Bottom;Copper Fill89
67;;;39.5224;-8.8109;0;Bottom;Copper Fill272
68;180k;0805 [SMD];50.8705;-6.38318;90;Top;R3
69;;;90.2081;-28.8769;0;Bottom;Copper Fill86
70;;;57.2008;-6.4233;0;Bottom;Copper Fill266
71;;;43.7388;-50.7971;0;Bottom;Copper Fill159
72;;;91.1606;-21.7903;0;Bottom;Copper Fill65
73;;;31.8008;-3.2229;0;Bottom;Copper Fill82
74;;;57.2008;-51.4829;0;Bottom;Copper Fill164
75;;;86.4616;-49.3493;0;Bottom;Copper Fill176
76;;;30.1498;-40.2307;0;Bottom;Copper Fill198
77;;;62.4332;-23.3524;0;Bottom;Copper Fill278
78;;;13.6398;-36.5477;0;Bottom;Copper Fill212
79;;;20.1168;-51.4829;0;Bottom;Copper Fill1
80;;;66.2178;-16.2531;0;Bottom;Copper Fill251
81;;;95.3262;-16.3039;0;Bottom;Copper Fill250
82;;;95.3262;-21.3839;0;Bottom;Copper Fill236
83;;;49.784;-47.6983;0;Bottom;Copper Fill31
84;;;80.4672;-26.8195;0;Bottom;Copper Fill217
85;;;73.0377;-31.1629;0;Bottom;Copper Fill130
86;;;62.2808;-51.4829;0;Bottom;Copper Fill17
87;;;32.8168;-51.4829;0;Bottom;Copper Fill6
88;;;24.1681;-3.4769;0;Bottom;Copper Fill320
89;;;78.8105;-11.8534;0;Bottom;Via24
90;;;90.6272;-28.4324;0;Bottom;Copper Fill282
91;;;95.3262;-39.1639;0;Bottom;Copper Fill202
92;;;59.7408;-6.4233;0;Bottom;Copper Fill267
93;;;22.5044;-20.6219;0;Bottom;Copper Fill58
94;330k;0805 [SMD];50.8705;-14.0032;-90;Top;R4
95;;;33.3502;-45.7679;0;Bottom;Copper Fill26
96;;;81.407;-38.1987;0;Bottom;Copper Fill189
97;;;73.0377;-32.0265;0;Bottom;Copper Fill129
98;;;27.7368;-51.4829;0;Bottom;Copper Fill4
99;;;17.4498;-41.8055;0;Bottom;Copper Fill192
100;;;49.5681;-11.0969;0;Bottom;Copper Fill127
101;;;98.4377;-2.5879;0;Bottom;Copper Fill292
102;;;63.373;-11.4525;0;Bottom;Copper Fill258
103;;;78.1177;-25.0669;0;Bottom;Copper Fill101
104;;;95.3262;-49.2477;0;Bottom;Copper Fill177
105;;;70.0786;-23.6953;0;Bottom;Copper Fill230
106;;;62.2808;-6.4233;0;Bottom;Copper Fill268
107;;;37.5355;-11.8534;0;Bottom;Via3
108;;;39.0652;-17.3961;0;Bottom;Copper Fill237
109;;;95.0722;-3.0324;0;Bottom;Copper Fill308
110;;;26.4541;-51.4575;0;Bottom;Copper Fill120
111;;;78.1177;-24.1779;0;Bottom;Copper Fill296
112;;;92.5322;-45.3107;0;Bottom;Copper Fill187
113;;;3.1877;-24.1779;0;Bottom;Copper Fill122
114;;;60.833;-11.4525;0;Bottom;Copper Fill257
115;;;95.3262;-18.8439;0;Bottom;Copper Fill244
116;;;95.3262;-44.2439;0;Bottom;Copper Fill191
117;;;48.387;-21.2061;0;Bottom;Copper Fill240
118;;;79.1972;-11.9224;0;Bottom;Copper Fill108
119;;;12.3444;-19.3519;0;Bottom;Copper Fill54
120;;;81.8388;-19.4027;0;Bottom;Copper Fill243
121;;;39.2176;-10.1063;0;Bottom;Copper Fill263
122;;;10.4394;-43.6597;0;Bottom;Copper Fill183
123;;;17.4244;-19.9869;0;Bottom;Copper Fill56
124;;;91.821;-18.6661;0;Bottom;Copper Fill68
125;;;40.1828;-6.2963;0;Bottom;Copper Fill274
126;;;24.1681;-8.3029;0;Bottom;Copper Fill285
127;;THT;32.4556;-38.5233;90;Bottom;J2
128;;;98.8822;-3.0324;0;Bottom;Copper Fill100
129;;;67.3481;-10.2079;0;Bottom;Copper Fill326
130;;;52.0446;-20.3425;0;Bottom;Copper Fill242
131;;;94.6855;-2.96335;0;Bottom;Via26
132;;;78.1177;-24.1779;0;Bottom;Copper Fill102
133;;;94.0181;-6.6519;0;Bottom;Copper Fill309
134;;;15.5194;-42.3897;0;Bottom;Copper Fill190
135;;;37.5355;-13.1234;0;Bottom;Via7
136;;;37.5355;-8.04335;0;Bottom;Via6
137;;;62.2681;-11.0969;0;Bottom;Copper Fill146
138;;;9.8044;-19.0471;0;Bottom;Copper Fill53
139;;;98.4377;-2.5879;0;Bottom;Copper Fill98
140;;;94.1832;-3.0324;0;Bottom;Copper Fill115
141;;;8.5598;-35.9127;0;Bottom;Copper Fill210
142;;;80.0608;-51.4829;0;Bottom;Copper Fill22
143;;;5.9944;-44.2947;0;Bottom;Copper Fill181
144;;;55.3974;-33.9569;0;Bottom;Copper Fill205
145;;;62.3005;-10.5834;0;Bottom;Via18
146;180k;0805 [SMD];68.6505;-6.38318;90;Top;R10
147;;;90.8812;-23.1111;0;Bottom;Copper Fill51
148;;;10.9982;-45.7933;0;Bottom;Copper Fill149
149;;;35.8394;-46.1235;0;Bottom;Copper Fill27
150;;;59.7408;-51.4829;0;Bottom;Copper Fill16
151;;;37.5355;-10.5834;0;Bottom;Via4
152;;;37.5355;-5.50335;0;Bottom;Via9
153;;;37.5355;-6.77335;0;Bottom;Via8
154;;;97.3582;-27.772;0;Bottom;Copper Fill330
155;;;49.7332;-30.9724;0;Bottom;Copper Fill126
156;;;95.631;-23.4667;0;Bottom;Copper Fill50
157;;;76.0222;-26.7941;0;Bottom;Copper Fill219
158;;;24.5872;-3.0324;0;Bottom;Copper Fill322
159;;;95.3262;-34.0839;0;Bottom;Copper Fill221
160;;;24.2005;-2.96335;0;Bottom;Via29
161;;;90.2405;-28.3634;0;Bottom;Via32
162;;;78.7781;-11.4779;0;Bottom;Copper Fill106
163;;;14.2748;-2.8673;0;Bottom;Copper Fill80
164;;;95.3262;-26.4639;0;Bottom;Copper Fill48
165;;;95.3262;-49.3239;0;Bottom;Copper Fill37
166;;;81.28;-25.0415;0;Bottom;Copper Fill232
167;;;57.1881;-11.0969;0;Bottom;Copper Fill137
168;330k;0805 [SMD];68.6505;-14.0032;-90;Top;R9
169;;;95.631;-20.9267;0;Bottom;Copper Fill67
170;;;47.3964;-36.0905;0;Bottom;Copper Fill216
171;;;98.4377;-3.4769;0;Bottom;Copper Fill291
172;;;25.1714;-30.8835;0;Bottom;Copper Fill42
173;;;95.3262;-36.6239;0;Bottom;Copper Fill44
174;;;54.6608;-51.4829;0;Bottom;Copper Fill163
175;;;58.7248;-17.2183;0;Bottom;Copper Fill245
176;;;78.5622;-24.6224;0;Bottom;Copper Fill298
177;;;51.4477;-26.7179;0;Bottom;Copper Fill289
178;;;37.8968;-51.4829;0;Bottom;Copper Fill8
179;;;50.3428;-13.04;0;Bottom;Copper Fill314
180;;;24.765;-26.5401;0;Bottom;Copper Fill148
181;;;24.1681;-9.1665;0;Bottom;Copper Fill284
182;;;89.7636;-28.4324;0;Bottom;Copper Fill281
183;;;57.2205;-10.5834;0;Bottom;Via16
184;;;69.342;-26.5401;0;Bottom;Copper Fill79
185;;;96.5581;-6.6519;0;Bottom;Copper Fill118
186;;;37.8968;-51.4829;0;Bottom;Copper Fill157
187;;;85.2932;-35.2015;0;Bottom;Copper Fill220
188;;;51.4477;-27.6069;0;Bottom;Copper Fill94
189;;;51.8922;-27.1624;0;Bottom;Copper Fill290
190;;;64.8208;-6.4233;0;Bottom;Copper Fill269
191;;;94.6277;-3.4769;0;Bottom;Copper Fill113
192;;;76.3016;-49.2731;0;Bottom;Copper Fill179
193;;;57.2008;-51.4829;0;Bottom;Copper Fill15
194;;;78.1177;-19.9869;0;Bottom;Copper Fill303
195;;;48.2981;-2.8165;0;Bottom;Copper Fill283
196;;;92.7608;-9.9285;0;Bottom;Copper Fill77
197;;;30.2768;-51.4829;0;Bottom;Copper Fill5
198;;;12.2621;-17.215;0;Bottom;TXT6
199;;;5.9944;-35.6079;0;Bottom;Copper Fill209
200;;;24.1681;-2.5879;0;Bottom;Copper Fill132
201;;;14.9098;-19.6567;0;Bottom;Copper Fill55
202;;;95.3262;-44.2439;0;Bottom;Copper Fill39
203;;;89.7636;-28.4324;0;Bottom;Copper Fill87
204;;;37.5355;-9.31335;0;Bottom;Via5
205;;;95.3008;-51.5337;0;Bottom;Copper Fill175
206;;;54.6608;-6.4233;0;Bottom;Copper Fill265
207;;;85.1408;-51.4829;0;Bottom;Copper Fill174
208;;;96.5581;-6.6519;0;Bottom;Copper Fill311
209;;;74.1172;-31.3407;0;Bottom;Copper Fill226
210;;;78.5114;-36.9287;0;Bottom;Copper Fill206
211;;;11.0744;-36.2429;0;Bottom;Copper Fill211
212;;;49.5808;-51.4829;0;Bottom;Copper Fill12
213;;;80.0608;-51.4829;0;Bottom;Copper Fill172
214;;;38.9128;-11.3763;0;Bottom;Copper Fill261
215;;so014;81.9856;-31.1634;0;Top;IC2
216;;so014;68.0156;-31.1634;0;Top;IC1
217;;;62.2808;-51.4829;0;Bottom;Copper Fill166
218;;;34.3408;-3.2229;0;Bottom;Copper Fill83
219;;;85.1408;-51.4829;0;Bottom;Copper Fill24
220;;;68.453;-11.4525;0;Bottom;Copper Fill260
221;;;95.3262;-11.2239;0;Bottom;Copper Fill253
222;;;69.2912;-30.5025;0;Bottom;Copper Fill75
223;;;95.631;-15.8467;0;Bottom;Copper Fill70
224;;;74.9808;-51.4829;0;Bottom;Copper Fill20
225;;;78.3336;-11.9224;0;Bottom;Copper Fill301
226;;;24.5872;-8.722;0;Bottom;Copper Fill287
227;;;84.7598;-26.5401;0;Bottom;Copper Fill222
228;;;35.433;-22.1967;0;Bottom;Copper Fill63
229;;;35.3568;-51.4829;0;Bottom;Copper Fill156
230;;;77.3684;-36.1667;0;Bottom;Copper Fill207
231;;;77.6732;-24.6224;0;Bottom;Copper Fill297
232;;;78.5622;-19.5424;0;Bottom;Copper Fill305
233;;;78.5622;-19.5424;0;Bottom;Copper Fill112
234;;;65.3288;-35.6841;0;Bottom;Copper Fill199
235;;;78.1755;-19.4734;0;Bottom;Via23
236;;;44.0436;-15.0593;0;Bottom;Copper Fill247
237;;;81.4832;-32.2424;0;Bottom;Copper Fill140
238;;;95.0722;-3.0324;0;Bottom;Copper Fill116
239;;;78.7781;-12.3669;0;Bottom;Copper Fill105
240;;THT;32.4556;-23.2833;-90;Bottom;J1
241;;;38.7477;-37.7415;0;Bottom;Copper Fill124
242;;;38.4048;-46.4283;0;Bottom;Copper Fill28
243;;;54.6481;-11.0969;0;Bottom;Copper Fill136
244;;;27.6098;-40.5355;0;Bottom;Copper Fill197
245;;;95.3262;-29.0039;0;Bottom;Copper Fill229
246;;;74.9808;-51.4829;0;Bottom;Copper Fill170
247;;;41.3512;-10.5635;0;Bottom;Copper Fill74
248;;;55.0418;-17.5231;0;Bottom;Copper Fill66
249;;;52.1208;-6.4233;0;Bottom;Copper Fill264
250;;;67.3481;-11.0969;0;Bottom;Copper Fill142
251;;;95.3262;-41.7039;0;Bottom;Copper Fill196
252;;;57.1881;-10.2079;0;Bottom;Copper Fill325
253;;;46.101;-36.7255;0;Bottom;Copper Fill214
254;180k;0805 [SMD];61.0305;-6.38318;-90;Top;R14
255;;;40.4876;-5.0263;0;Bottom;Copper Fill275
256;;;32.8168;-51.4829;0;Bottom;Copper Fill155
257;;;46.8122;-11.9224;0;Bottom;Copper Fill121
258;;;51.5055;-27.0934;0;Bottom;Via28
259;;;28.8035;-15.8903;0;Bottom;TXT18
260;;;90.6272;-28.4324;0;Bottom;Copper Fill88
261;;;95.3262;-18.8439;0;Bottom;Copper Fill69
262;;;35.3568;-51.4829;0;Bottom;Copper Fill7
263;;;23.7236;-8.722;0;Bottom;Copper Fill286
264;;;62.9158;-33.0171;0;Bottom;Copper Fill215
265;;;41.9806;-1.05826;0;Bottom;Via33
266;;;78.5368;-48.9683;0;Bottom;Copper Fill180
267;;;78.1177;-19.9869;0;Bottom;Copper Fill109
268;330k;0805 [SMD];53.4105;-14.0032;-90;Top;R2
269;;;65.913;-11.4525;0;Bottom;Copper Fill259
270;;;3.1877;-24.1779;0;Bottom;Copper Fill316
271;;;40.4368;-51.4829;0;Bottom;Copper Fill158
272;;;20.1168;-51.4829;0;Bottom;Copper Fill150
273;;;59.7605;-10.5834;0;Bottom;Via17
274;;;97.9932;-3.0324;0;Bottom;Copper Fill99
275;;;30.1244;-37.1319;0;Bottom;Copper Fill213
276;;;52.1081;-11.0969;0;Bottom;Copper Fill135
277;;;47.0916;-33.6013;0;Bottom;Copper Fill223
278;;;95.3262;-23.9239;0;Bottom;Copper Fill235
279;;;78.3336;-11.9224;0;Bottom;Copper Fill107
280;;;19.5072;-13.5099;0;Bottom;Copper Fill64
281;;;11.7094;-43.3549;0;Bottom;Copper Fill185
282;;;24.5872;-8.722;0;Bottom;Copper Fill93
283;;;54.6608;-51.4829;0;Bottom;Copper Fill14
284;;;81.9277;-32.6869;0;Bottom;Copper Fill138
285;;;43.9166;-21.8157;0;Bottom;Copper Fill238
286;;;98.8822;-3.0324;0;Bottom;Copper Fill294
287;;;55.9816;-17.0659;0;Bottom;Copper Fill246
288;;;95.3262;-46.7839;0;Bottom;Copper Fill184
289;;;2.3368;-23.3524;0;Bottom;Copper Fill318
290;;;93.1926;-7.452;0;Bottom;Copper Fill310
291;;;40.4368;-51.4829;0;Bottom;Copper Fill9
292;;;49.7332;-30.9724;0;Bottom;Copper Fill319
293;;;90.2081;-28.8769;0;Bottom;Copper Fill279
294;330k;0805 [SMD];63.5705;-14.0032;-90;Top;R15
295;;;52.1208;-51.4829;0;Bottom;Copper Fill162
296;;;66.0908;-50.7971;0;Bottom;Copper Fill167
297;;;46.1772;-21.5109;0;Bottom;Copper Fill239
298;;;54.8894;-48.3333;0;Bottom;Copper Fill33
299;;;49.5808;-51.4829;0;Bottom;Copper Fill161
300;;;95.3262;-31.5439;0;Bottom;Copper Fill227
301;;;94.0181;-6.6519;0;Bottom;Copper Fill117
302;;;44.5205;-11.8534;0;Bottom;Via21
303;;;81.9277;-31.7979;0;Bottom;Copper Fill139
304;;;22.2549;-19.3072;0;Bottom;TXT3
305;;;41.9481;-0.7083;0;Bottom;Copper Fill276
306;;;94.1832;-3.0324;0;Bottom;Copper Fill307
307;;;97.9932;-3.0324;0;Bottom;Copper Fill293
308;;;25.0444;-40.8403;0;Bottom;Copper Fill195
309;;;3.1877;-22.5015;0;Bottom;Copper Fill123
310;;;95.631;-13.3067;0;Bottom;Copper Fill72
311;180k;0805 [SMD];55.9505;-6.38318;90;Top;R5
312;;;98.4955;-2.96335;0;Bottom;Via27
313;;;54.4322;-35.2269;0;Bottom;Copper Fill204
314;;;73.4822;-31.582;0;Bottom;Copper Fill131
315;;;95.3262;-39.1639;0;Bottom;Copper Fill41
316;;;52.1208;-51.4829;0;Bottom;Copper Fill13
317;;;69.9008;-51.4829;0;Bottom;Copper Fill18
318;;;55.753;-11.4525;0;Bottom;Copper Fill255
319;;;63.754;-16.5579;0;Bottom;Copper Fill249
320;;;92.1512;-12.0113;0;Bottom;Copper Fill73
321;;;97.3582;-27.772;0;Bottom;Copper Fill147
322;;;90.2081;-27.9879;0;Bottom;Copper Fill280
323;;;46.4255;-11.8534;0;Bottom;Via22
324;;;64.8405;-10.5834;0;Bottom;Via19
325;;;14.2494;-42.7199;0;Bottom;Copper Fill188
326;;;61.214;-16.8627;0;Bottom;Copper Fill248
327;;;72.4605;-22.0134;0;Bottom;Via1
328;;;64.8081;-11.0969;0;Bottom;Copper Fill144
329;;;77.5208;-51.4829;0;Bottom;Copper Fill21
330;;;72.4408;-51.4829;0;Bottom;Copper Fill19
331;;;19.9644;-20.3171;0;Bottom;Copper Fill57
332;;;47.244;-47.3935;0;Bottom;Copper Fill30
333;;;48.0568;-30.9724;0;Bottom;Copper Fill125
334;;;49.6005;-10.5834;0;Bottom;Via14
335;;;54.6481;-10.2079;0;Bottom;Copper Fill324
336;;;94.6277;-3.4769;0;Bottom;Copper Fill306
337;;;69.9008;-51.4829;0;Bottom;Copper Fill168
338;;;24.2005;-8.67835;0;Bottom;Via30
339;;;95.3262;-41.7039;0;Bottom;Copper Fill40
340;;;47.0408;-51.4829;0;Bottom;Copper Fill160
341;;;82.3722;-32.2424;0;Bottom;Copper Fill141
342;;;61.6077;-24.1779;0;Bottom;Copper Fill277
343;;;32.1818;-37.3351;0;Bottom;Copper Fill43
344;;;75.0824;-34.6173;0;Bottom;Copper Fill218
345;;;23.7236;-3.0324;0;Bottom;Copper Fill133
346;;;78.7781;-12.3669;0;Bottom;Copper Fill299
347;;;97.3582;-7.452;0;Bottom;Copper Fill119
348;;;7.2644;-18.7169;0;Bottom;Copper Fill52
349;;;32.6644;-39.9005;0;Bottom;Copper Fill200
350;;;59.7281;-10.2079;0;Bottom;Copper Fill328
351;;;22.6568;-51.4829;0;Bottom;Copper Fill2
352;;;59.7408;-51.4829;0;Bottom;Copper Fill165
353;;;77.6732;-24.6224;0;Bottom;Copper Fill103
354;;;77.5208;-51.4829;0;Bottom;Copper Fill171
355;;;61.6077;-24.1779;0;Bottom;Copper Fill85
356;;;72.4408;-51.4829;0;Bottom;Copper Fill169
357;;;71.8312;-27.8355;0;Bottom;Copper Fill228
358;;;27.5844;-21.2569;0;Bottom;Copper Fill60
359;;;74.0918;-49.6033;0;Bottom;Copper Fill178
360;180k;0805 [SMD];58.4905;-6.38318;90;Top;R7
361;180k;0805 [SMD];66.1105;-6.38318;90;Top;R12
362;;;23.7236;-3.0324;0;Bottom;Copper Fill321
363;;;44.0944;-47.9269;0;Bottom;Copper Fill10
364;;;91.8464;-14.8815;0;Bottom;Copper Fill71
365;;;48.7934;-38.3257;0;Bottom;Copper Fill201
366;;;37.5355;-4.23335;0;Bottom;Via10
367;;;49.5681;-10.2079;0;Bottom;Copper Fill315
368;;;51.8922;-27.1624;0;Bottom;Copper Fill96
369;;;67.3608;-6.4233;0;Bottom;Copper Fill270
370;;;90.551;-24.3811;0;Bottom;Copper Fill49
371;;;53.213;-11.4525;0;Bottom;Copper Fill254
372;;;49.1236;-10.6524;0;Bottom;Copper Fill128
373;;;78.7781;-11.4779;0;Bottom;Copper Fill300
374;;;25.0698;-20.9267;0;Bottom;Copper Fill59
375;;;69.85;-31.8741;0;Bottom;Copper Fill225
376;;;48.3305;-2.32835;0;Bottom;Via31
377;;;30.1244;-21.5871;0;Bottom;Copper Fill61
378;;;24.1681;-9.1665;0;Bottom;Copper Fill90
379;;;62.2681;-10.2079;0;Bottom;Copper Fill329
380;180k;0805 [SMD];53.4105;-6.38318;90;Top;R1
381;;;70.9422;-25.0415;0;Bottom;Copper Fill231
382;;;81.9855;-32.1734;0;Bottom;Via12
383;;;95.3262;-34.0839;0;Bottom;Copper Fill45
384;;;95.3008;-51.4829;0;Bottom;Copper Fill25
385;;;95.3262;-46.7839;0;Bottom;Copper Fill38
386;;;78.1177;-25.0669;0;Bottom;Copper Fill295
387;;;52.324;-48.0285;0;Bottom;Copper Fill32
388;;;82.7024;-25.0161;0;Bottom;Copper Fill233
389;;;46.8122;-11.9224;0;Bottom;Copper Fill313
1;;;90.5138;-45.3247;0;Bottom;TXT19
2;;;37.0349;-47.6956;-90;Bottom;TXT19
3;;;56.5691;-10.5834;0;Bottom;Via16
4;;;95.3008;-51.5337;0;Bottom;Copper Fill163
5;;;98.6693;-25.2846;0;Bottom;TXT19
6;;;51.4891;-10.5834;0;Bottom;Via13
7;;;66.6877;-11.0969;0;Bottom;Copper Fill151
8;;;54.6608;-51.4575;0;Bottom;Copper Fill15
9;;;90.5138;-22.3761;0;Bottom;TXT19
10;;;69.4944;-5.6105;0;Bottom;Copper Fill275
11;;;49.0474;-20.6219;0;Bottom;Copper Fill245
12;;;36.8841;-5.50335;0;Bottom;Via9
13;;;12.7381;-9.5729;0;Bottom;Copper Fill283
14;;so014;67.3642;-31.1634;0;Top;IC1
15;;;6.6294;-19.0471;0;Bottom;Copper Fill68
16;;;47.9806;-21.1807;0;Bottom;Copper Fill238
17;;;70.4977;-11.0969;0;Bottom;Copper Fill332
18;;;95.3262;-41.7039;0;Bottom;Copper Fill188
19;;;78.5368;-11.9224;0;Bottom;Copper Fill120
20;;;47.6791;-11.8534;0;Bottom;Via39
21;;;88.3191;-30.2684;0;Bottom;Via32
22;;;45.4406;-36.7255;0;Bottom;Copper Fill213
23;;;54.5084;-27.1624;0;Bottom;Copper Fill108
24;;;95.3262;-41.7039;0;Bottom;Copper Fill38
25;;;72.8218;-31.582;0;Bottom;Copper Fill143
26;;;26.7208;-24.2541;0;Bottom;Copper Fill60
27;;;21.844;-40.8403;0;Bottom;Copper Fill187
28;;;90.5138;-29.9718;0;Bottom;TXT19
29;;;77.4573;-25.0669;0;Bottom;Copper Fill298
30;;;23.5077;-7.0329;0;Bottom;Copper Fill103
31;;;34.3408;-24.2541;0;Bottom;Copper Fill63
32;;;96.5073;-6.6519;0;Bottom;Copper Fill139
33;;;89.9456;-7.11828;0;Bottom;TXT19
34;;;49.5808;-51.4575;0;Bottom;Copper Fill13
35;;;53.7718;-33.9823;0;Bottom;Copper Fill202
36;;;95.3262;-21.3839;0;Bottom;Copper Fill239
37;;;72.3773;-32.0265;0;Bottom;Copper Fill141
38;;;47.4218;-30.9724;0;Bottom;Copper Fill136
39;;;69.9008;-51.4575;0;Bottom;Copper Fill19
40;;;70.4977;-10.2079;0;Bottom;Copper Fill333
41;;;22.6568;-51.4575;0;Bottom;Copper Fill3
42;;;23.9268;-7.452;0;Bottom;Copper Fill105
43;;;98.6693;-30.2596;0;Bottom;TXT19
44;180k;0805 [SMD];57.8391;-6.38318;90;Top;R7
45;;;2.5781;-22.5015;0;Bottom;Copper Fill314
46;;;55.3212;-17.0659;0;Bottom;Copper Fill252
47;;;36.8808;-37.4875;0;Bottom;Copper Fill197
48;;;47.2694;-47.3935;0;Bottom;Copper Fill31
49;180k;0805 [SMD];55.2991;-6.38318;90;Top;R5
50;;;95.3262;-29.0039;0;Bottom;Copper Fill47
51;;;95.3262;-46.7839;0;Bottom;Copper Fill36
52;;;54.5084;-27.1624;0;Bottom;Copper Fill292
53;;;87.8332;-30.312;0;Bottom;Copper Fill100
54;;;61.2569;-45.8965;-90;Bottom;TXT19
55;;;23.5491;-7.40835;0;Bottom;Via30
56;;;46.4566;-33.6267;0;Bottom;Copper Fill222
57;;;95.3262;-39.1639;0;Bottom;Copper Fill194
58;;;49.0982;-30.9724;0;Bottom;Copper Fill321
59;;;19.3294;-41.1705;0;Bottom;Copper Fill186
60;;;46.5328;-21.5109;0;Bottom;Copper Fill243
61;;;98.6693;-35.3396;0;Bottom;TXT19
62;;;95.3262;-34.0839;0;Bottom;Copper Fill221
63;;;95.3262;-23.9239;0;Bottom;Copper Fill236
64;330k;0805 [SMD];55.2992;-14.0032;-90;Top;R6
65;;;90.7097;-50.4047;0;Bottom;TXT19
66;;;48.0568;-2.372;0;Bottom;Copper Fill158
67;;;72.4408;-51.4575;0;Bottom;Copper Fill20
68;;;43.7896;-47.9269;0;Bottom;Copper Fill11
69;;;90.5138;-27.4882;0;Bottom;TXT19
70;;;64.1096;-24.2541;0;Bottom;Copper Fill230
71;;;95.3262;-34.0839;0;Bottom;Copper Fill45
72;;;64.1477;-10.2079;0;Bottom;Copper Fill329
73;;;95.3262;-16.3039;0;Bottom;Copper Fill255
74;;;69.215;-31.8741;0;Bottom;Copper Fill224
75;;;77.0128;-24.6224;0;Bottom;Copper Fill116
76;;;39.751;-33.4489;0;Bottom;Copper Fill70
77;;;27.9908;-30.9089;0;Bottom;Copper Fill41
78;;THT;12.7542;-8.67826;-90;Bottom;J4
79;;;97.8441;-2.96335;0;Bottom;Via27
80;;;19.3469;-1.27133;0;Bottom;TXT18
81;;;59.0804;-6.3979;0;Bottom;Copper Fill272
82;;;51.4477;-10.2079;0;Bottom;Copper Fill324
83;;;26.4033;-51.4575;0;Bottom;Copper Fill138
84;;;78.1177;-11.4779;0;Bottom;Copper Fill118
85;;;10.4066;-5.05384;-90;Bottom;TXT20
86;;;90.5138;-19.8406;0;Bottom;TXT19
87;;;88.2777;-29.8929;0;Bottom;Copper Fill99
88;;;56.5404;-6.3979;0;Bottom;Copper Fill271
89;;;50.8964;-26.4583;0;Bottom;Part1
90;;;55.372;-27.1624;0;Bottom;Copper Fill109
91;;;95.3262;-46.7839;0;Bottom;Copper Fill175
92;;;59.1091;-10.5834;0;Bottom;Via17
93;;THT;31.8042;-38.5233;90;Bottom;J2
94;;;50.9524;-36.5223;0;Bottom;Copper Fill200
95;;;64.1891;-10.5834;0;Bottom;Via19
96;;;5.334;-35.6079;0;Bottom;Copper Fill207
97;;;88.2777;-29.8929;0;Bottom;Copper Fill285
98;;;34.7726;-22.2221;0;Bottom;Copper Fill77
99;180k;0805 [SMD];65.4591;-6.38318;90;Top;R13
100;180k;0805 [SMD];67.9991;-6.38318;90;Top;R15
101;;;55.372;-27.1624;0;Bottom;Copper Fill293
102;;;90.5256;-21.8157;0;Bottom;Copper Fill78
103;;;90.5138;-42.6718;0;Bottom;TXT19
104;;;78.5368;-11.9224;0;Bottom;Copper Fill305
105;;;57.2008;-51.4575;0;Bottom;Copper Fill16
106;;;32.6898;-45.7933;0;Bottom;Copper Fill27
107;;;88.6968;-30.312;0;Bottom;Copper Fill101
108;;;95.631;-15.8467;0;Bottom;Copper Fill85
109;;;77.0128;-24.6224;0;Bottom;Copper Fill300
110;;;55.118;-11.4525;0;Bottom;Copper Fill261
111;;;42.0678;-47.9743;-90;Bottom;TXT19
112;;;9.1694;-19.3773;0;Bottom;Copper Fill69
113;;;11.4808;-24.2541;0;Bottom;Copper Fill54
114;;;57.658;-11.4525;0;Bottom;Copper Fill262
115;;;95.631;-13.2813;0;Bottom;Copper Fill88
116;;;94.4118;-3.0324;0;Bottom;Copper Fill338
117;;;91.1606;-17.3707;0;Bottom;Copper Fill84
118;;;19.304;-20.3425;0;Bottom;Copper Fill71
119;;;23.9268;-3.0324;0;Bottom;Copper Fill131
120;;;35.179;-46.1489;0;Bottom;Copper Fill28
121;;;70.9168;-10.6524;0;Bottom;Copper Fill334
122;;;39.8526;-5.0517;0;Bottom;Copper Fill280
123;;;95.3262;-49.3239;0;Bottom;Copper Fill35
124;;;95.3262;-26.4639;0;Bottom;Copper Fill235
125;;;59.0677;-11.0969;0;Bottom;Copper Fill153
126;;;21.6408;-24.2541;0;Bottom;Copper Fill58
127;;;95.3262;-31.5439;0;Bottom;Copper Fill46
128;;;79.8576;-26.8195;0;Bottom;Copper Fill217
129;;;36.8841;-9.31335;0;Bottom;Via36
130;;;98.6693;-27.7761;0;Bottom;TXT19
131;;;2.5781;-24.1779;0;Bottom;Copper Fill313
132;;;77.0128;-19.5424;0;Bottom;Copper Fill307
133;;;77.0128;-19.5424;0;Bottom;Copper Fill123
134;;;95.3262;-11.2239;0;Bottom;Copper Fill259
135;;;77.4573;-25.0669;0;Bottom;Copper Fill114
136;;;16.5608;-24.2541;0;Bottom;Copper Fill56
137;;;65.278;-11.4525;0;Bottom;Copper Fill265
138;;;23.5077;-3.4769;0;Bottom;Copper Fill129
139;;;71.8091;-22.0134;0;Bottom;Via1
140;;;7.8994;-35.9127;0;Bottom;Copper Fill208
141;;;54.9529;-27.6069;0;Bottom;Copper Fill106
142;;;4.5466;-30.9089;0;Bottom;Copper Fill44
143;330k;0805 [SMD];62.9192;-14.0032;-90;Top;R12
144;;;81.1784;-19.4027;0;Bottom;Copper Fill247
145;;;35.3568;-51.4575;0;Bottom;Copper Fill8
146;;;90.5138;-40.1318;0;Bottom;TXT19
147;;;95.631;-26.0067;0;Bottom;Copper Fill49
148;;;52.578;-11.4525;0;Bottom;Copper Fill260
149;;;81.3341;-32.1734;0;Bottom;Via12
150;;;83.6168;-26.5401;0;Bottom;Copper Fill229
151;;;98.6693;-22.6639;0;Bottom;TXT19
152;;;26.7621;-47.0408;-90;Bottom;TXT19
153;;;81.7118;-32.2424;0;Bottom;Copper Fill150
154;;;36.8046;-24.2541;0;Bottom;Copper Fill64
155;;;12.7381;-7.8965;0;Bottom;Copper Fill284
156;;;41.9641;-1.05835;0;Bottom;Via38
157;;;75.3618;-26.7941;0;Bottom;Copper Fill219
158;;;23.5077;-7.0329;0;Bottom;Copper Fill287
159;;;90.5138;-17.3096;0;Bottom;TXT19
160;;;56.5277;-11.0969;0;Bottom;Copper Fill146
161;;;97.7773;-2.5879;0;Bottom;Copper Fill111
162;;;93.9673;-6.6519;0;Bottom;Copper Fill134
163;;;89.5858;-25.6511;0;Bottom;Copper Fill50
164;;;72.4441;-31.5384;0;Bottom;Via11
165;;;37.8968;-51.4575;0;Bottom;Copper Fill9
166;;;62.2808;-33.0171;0;Bottom;Copper Fill215
167;;;7.91792;-5.74702;-90;Bottom;TXT20
168;;;77.851;-36.9541;0;Bottom;Copper Fill203
169;;;78.232;-48.9175;0;Bottom;Copper Fill170
170;;;12.7478;-10.7894;0;Bottom;TXT21
171;;;56.3085;-48.0494;-90;Bottom;TXT19
172;;;14.0208;-24.2541;0;Bottom;Copper Fill55
173;;;25.1968;-51.4575;0;Bottom;Copper Fill4
174;;;84.3165;-47.7896;-90;Bottom;TXT19
175;;;38.608;-10.1825;0;Bottom;Copper Fill268
176;;;34.3408;-37.4875;0;Bottom;Copper Fill196
177;;;94.4118;-3.0324;0;Bottom;Copper Fill161
178;;;21.844;-20.6473;0;Bottom;Copper Fill72
179;;;90.5138;-12.2296;0;Bottom;TXT19
180;;;41.8973;-0.7083;0;Bottom;Copper Fill282
181;;;93.9673;-3.4769;0;Bottom;Copper Fill337
182;;;77.4573;-19.9869;0;Bottom;Copper Fill121
183;;;95.3262;-8.6839;0;Bottom;Copper Fill276
184;;;72.3773;-31.1629;0;Bottom;Copper Fill142
185;;;77.9018;-19.5424;0;Bottom;Copper Fill124
186;;;95.3262;-29.0039;0;Bottom;Copper Fill227
187;;;30.2768;-51.4575;0;Bottom;Copper Fill6
188;;;92.5322;-45.3107;0;Bottom;Copper Fill178
189;;;47.6377;-2.8165;0;Bottom;Copper Fill335
190;;;26.924;-21.2823;0;Bottom;Copper Fill74
191;;;80.6196;-25.0161;0;Bottom;Copper Fill233
192;;;98.6693;-40.4196;0;Bottom;TXT19
193;;;58.8485;-48.0494;-90;Bottom;TXT19
194;;;90.8304;-19.9107;0;Bottom;Copper Fill82
195;;;37.7444;-46.4537;0;Bottom;Copper Fill29
196;;;81.3341;-22.0134;0;Bottom;Via2
197;;;95.3262;-31.5439;0;Bottom;Copper Fill225
198;;;19.1008;-24.2541;0;Bottom;Copper Fill57
199;;;48.9491;-10.5834;0;Bottom;Via14
200;;;32.1564;-39.5703;0;Bottom;Copper Fill193
201;;;77.4573;-19.0979;0;Bottom;Copper Fill122
202;;;46.736;-36.0905;0;Bottom;Copper Fill216
203;;THT;31.8042;-23.2833;-90;Bottom;J1
204;;;60.198;-11.4525;0;Bottom;Copper Fill263
205;;;78.1177;-12.3669;0;Bottom;Copper Fill302
206;;;95.3262;-18.8439;0;Bottom;Copper Fill250
207;;;97.3074;-7.452;0;Bottom;Copper Fill140
208;;;50.1904;-20.0631;0;Bottom;Copper Fill246
209;;;98.7625;-9.94614;0;Bottom;TXT19
210;330k;0805 [SMD];65.4592;-14.0032;-90;Top;R14
211;;;93.9673;-2.5879;0;Bottom;Copper Fill160
212;;;23.0632;-3.0324;0;Bottom;Copper Fill130
213;;;98.6693;-20.1284;0;Bottom;TXT19
214;;;77.4573;-24.1779;0;Bottom;Copper Fill115
215;;;97.7773;-2.5879;0;Bottom;Copper Fill295
216;;;77.5241;-24.5534;0;Bottom;Via25
217;;;38.2778;-11.4271;0;Bottom;Copper Fill267
218;;;43.7388;-50.6955;0;Bottom;Copper Fill165
219;;;82.042;-25.0415;0;Bottom;Copper Fill234
220;;;95.3262;-36.6239;0;Bottom;Copper Fill206
221;;;32.8168;-51.4575;0;Bottom;Copper Fill7
222;;;98.6693;-32.7432;0;Bottom;TXT19
223;;;61.341;-33.4489;0;Bottom;Copper Fill214
224;;;95.3262;-39.1639;0;Bottom;Copper Fill40
225;;;59.7408;-51.4575;0;Bottom;Copper Fill17
226;;THT;48.3142;-30.9033;0;Bottom;J3
227;;;78.1591;-11.8534;0;Bottom;Via24
228;;;77.9018;-24.6224;0;Bottom;Copper Fill301
229;;;95.3262;-11.2239;0;Bottom;Copper Fill90
230;;;98.6693;-45.6125;0;Bottom;TXT19
231;;;51.0286;-19.5043;0;Bottom;Copper Fill248
232;;;98.6693;-42.9596;0;Bottom;TXT19
233;;;39.243;-7.6425;0;Bottom;Copper Fill278
234;;;61.6712;-11.5541;0;Bottom;Copper Fill87
235;;;76.708;-36.1667;0;Bottom;Copper Fill205
236;;;16.1544;-42.0849;0;Bottom;Copper Fill184
237;;;70.4977;-11.0969;0;Bottom;Copper Fill155
238;;;65.5574;-16.2531;0;Bottom;Copper Fill257
239;;;63.8813;-45.8494;-90;Bottom;TXT19
240;;;45.7741;-11.8534;0;Bottom;Via22
241;;;66.6877;-10.2079;0;Bottom;Copper Fill328
242;;;66.0908;-50.6955;0;Bottom;Copper Fill166
243;;;97.3074;-7.452;0;Bottom;Copper Fill323
244;;;96.5073;-6.6519;0;Bottom;Copper Fill322
245;180k;0805 [SMD];50.2191;-6.38318;90;Top;R1
246;;;81.2673;-32.6869;0;Bottom;Copper Fill147
247;;;5.715;-13.7131;0;Bottom;Copper Fill67
248;;;64.1477;-11.0969;0;Bottom;Copper Fill152
249;;;54.9529;-27.6069;0;Bottom;Copper Fill290
250;;;20.1168;-51.4575;0;Bottom;Copper Fill2
251;;;61.6491;-10.5834;0;Bottom;Via18
252;;;61.0141;-25.1884;0;Bottom;Via37
253;;;71.1962;-27.8101;0;Bottom;Copper Fill228
254;330k;0805 [SMD];60.3792;-14.0032;-90;Top;R10
255;;;24.4094;-40.5355;0;Bottom;Copper Fill189
256;;;36.8841;-8.04335;0;Bottom;Via6
257;;;39.1922;-37.4875;0;Bottom;Copper Fill198
258;;;74.1;-47.7896;-90;Bottom;TXT19
259;;;2.5781;-24.1779;0;Bottom;Copper Fill132
260;;;8.9408;-24.2541;0;Bottom;Copper Fill53
261;;;16.1798;-15.6435;0;Bottom;Copper Fill244
262;;;82.6008;-51.4575;0;Bottom;Copper Fill24
263;;;93.1672;-7.452;0;Bottom;Copper Fill320
264;;;61.6077;-11.0969;0;Bottom;Copper Fill154
265;;;88.2777;-30.7565;0;Bottom;Copper Fill98
266;;;41.8973;-0.7083;0;Bottom;Copper Fill95
267;;;95.3262;-8.6839;0;Bottom;Copper Fill92
268;;;29.2608;-24.2541;0;Bottom;Copper Fill61
269;;;62.738;-11.4525;0;Bottom;Copper Fill264
270;;;59.6138;-22.2475;0;Bottom;Copper Fill237
271;;;32.004;-21.9173;0;Bottom;Copper Fill76
272;;;13.6144;-42.7199;0;Bottom;Copper Fill179
273;;;98.5765;-37.8796;0;Bottom;TXT19
274;;;47.0408;-51.4575;0;Bottom;Copper Fill12
275;;;46.1296;-48.0494;-90;Bottom;TXT19
276;;;36.8841;-10.5834;0;Bottom;Via5
277;;;14.859;-42.3897;0;Bottom;Copper Fill181
278;;;36.8841;-6.77335;0;Bottom;Via8
279;;;52.5018;-35.2523;0;Bottom;Copper Fill201
280;;;45.8216;-32.3821;0;Bottom;Copper Fill223
281;;;86.8;-47.7896;-90;Bottom;TXT19
282;;;79.18;-47.7896;-90;Bottom;TXT19
283;;;29.464;-21.6125;0;Bottom;Copper Fill75
284;;;73.4568;-31.3407;0;Bottom;Copper Fill226
285;;;49.0982;-30.9724;0;Bottom;Copper Fill137
286;;;14.6177;-30.1469;0;Bottom;Copper Fill125
287;;;23.0632;-7.452;0;Bottom;Copper Fill104
288;;;64.1604;-6.3979;0;Bottom;Copper Fill274
289;;;24.892;-37.4621;0;Bottom;Copper Fill212
290;;;14.6177;-29.2579;0;Bottom;Copper Fill126
291;;;81.72;-47.7896;-90;Bottom;TXT19
292;;;95.3262;-13.7639;0;Bottom;Copper Fill258
293;;;95.3262;-44.2439;0;Bottom;Copper Fill37
294;;;95.3008;-51.4575;0;Bottom;Copper Fill26
295;;;71.4471;-47.7896;-90;Bottom;TXT19
296;;;36.8841;-13.1234;0;Bottom;Via3
297;;;14.1732;-29.7024;0;Bottom;Copper Fill311
298;;;54.0004;-6.3979;0;Bottom;Copper Fill270
299;;;47.6791;-2.32835;0;Bottom;Via31
300;;;54.9816;-27.0934;0;Bottom;Via28
301;;;84.6582;-35.2015;0;Bottom;Copper Fill220
302;;;62.103;-24.0001;0;Bottom;Copper Fill51
303;;;91.567;-43.7359;0;Bottom;Copper Fill180
304;;;9.779;-43.6597;0;Bottom;Copper Fill174
305;;;36.3466;-5.74226;0;Bottom;TXT5
306;;;53.9877;-11.0969;0;Bottom;Copper Fill145
307;;;78.867;-33.0425;0;Bottom;Copper Fill80
308;;;14.6177;-30.1469;0;Bottom;Copper Fill309
309;;;89.7128;-27.0989;0;Bottom;Copper Fill48
310;;;26.924;-40.2053;0;Bottom;Copper Fill190
311;;;98.2218;-3.0324;0;Bottom;Copper Fill113
312;;;11.0744;-43.3549;0;Bottom;Copper Fill176
313;;;23.5077;-7.8965;0;Bottom;Copper Fill286
314;;;52.1208;-51.4575;0;Bottom;Copper Fill14
315;;;77.6732;-11.9224;0;Bottom;Copper Fill304
316;;;80.8228;-32.2424;0;Bottom;Copper Fill149
317;;;77.9018;-24.6224;0;Bottom;Copper Fill117
318;;;15.0368;-29.7024;0;Bottom;Copper Fill312
319;;;98.6693;-15.0261;0;Bottom;TXT19
320;;;5.334;-44.2947;0;Bottom;Copper Fill172
321;;;80.0608;-51.4575;0;Bottom;Copper Fill23
322;;;67.818;-11.4525;0;Bottom;Copper Fill266
323;;;39.5478;-6.3217;0;Bottom;Copper Fill279
324;;;95.3262;-44.2439;0;Bottom;Copper Fill183
325;;;77.5208;-51.4575;0;Bottom;Copper Fill22
326;;;81.2673;-31.7979;0;Bottom;Copper Fill148
327;;;59.944;-48.9937;0;Bottom;Copper Fill33
328;;;97.3328;-3.0324;0;Bottom;Copper Fill112
329;;;91.5162;-14.8815;0;Bottom;Copper Fill86
330;;;36.8841;-4.23335;0;Bottom;Via10
331;;;42.5704;-37.1573;0;Bottom;Copper Fill199
332;;;48.3955;-3.62757;0;Bottom;TXT19
333;;;98.2218;-3.0324;0;Bottom;Copper Fill297
334;;;39.4903;-47.9272;-90;Bottom;TXT19
335;;;2.5781;-22.5015;0;Bottom;Copper Fill133
336;;;23.5077;-7.8965;0;Bottom;Copper Fill102
337;;;74.9808;-51.4575;0;Bottom;Copper Fill21
338;;;75.3872;-48.9429;0;Bottom;Copper Fill169
339;;;10.5156;-45.6917;0;Bottom;Copper Fill164
340;;;29.9084;-30.0886;0;Bottom;IMG1
341;;;54.0291;-10.5834;0;Bottom;Via15
342;;;17.399;-41.7547;0;Bottom;Copper Fill185
343;;;34.6235;-9.47286;0;Bottom;TXT3
344;;;81.1022;-37.8685;0;Bottom;Copper Fill182
345;;;49.8094;-47.7237;0;Bottom;Copper Fill32
346;;;34.4949;-47.6956;-90;Bottom;TXT19
347;;;70.2818;-25.0415;0;Bottom;Copper Fill232
348;;;61.6077;-10.2079;0;Bottom;Copper Fill331
349;;;62.2808;-51.4575;0;Bottom;Copper Fill18
350;;;77.9018;-19.5424;0;Bottom;Copper Fill308
351;;;61.6204;-6.3979;0;Bottom;Copper Fill273
352;;;15.0368;-29.7024;0;Bottom;Copper Fill128
353;;;31.9549;-47.6956;-90;Bottom;TXT19
354;;;45.0088;-21.5871;0;Bottom;Copper Fill242
355;;;77.5241;-19.4734;0;Bottom;Via23
356;;;23.9268;-3.0324;0;Bottom;Copper Fill318
357;;;14.6177;-29.2579;0;Bottom;Copper Fill310
358;;;64.6684;-35.3539;0;Bottom;Copper Fill192
359;;;95.3262;-36.6239;0;Bottom;Copper Fill43
360;;;43.4086;-15.0339;0;Bottom;Copper Fill253
361;;;90.5138;-14.7383;0;Bottom;TXT19
362;;;53.9877;-10.2079;0;Bottom;Copper Fill326
363;;;38.0873;-37.7415;0;Bottom;Copper Fill135
364;;;92.456;-11.0461;0;Bottom;Copper Fill91
365;;;98.6693;-17.5975;0;Bottom;TXT19
366;;;74.4474;-34.5919;0;Bottom;Copper Fill218
367;330k;0805 [SMD];57.8392;-14.0032;-90;Top;R8
368;;;98.6693;-48.0586;0;Bottom;TXT19
369;;;48.9077;-10.2079;0;Bottom;Copper Fill325
370;;;59.0677;-10.2079;0;Bottom;Copper Fill330
371;;;90.5138;-35.0518;0;Bottom;TXT19
372;;;70.9676;-18.1835;0;Bottom;Copper Fill79
373;;;51.4477;-11.0969;0;Bottom;Copper Fill144
374;;;23.5077;-3.4769;0;Bottom;Copper Fill316
375;;;54.9529;-26.7179;0;Bottom;Copper Fill107
376;;;43.8691;-11.8534;0;Bottom;Via21
377;;;12.319;-43.0247;0;Bottom;Copper Fill177
378;;;14.1732;-29.7024;0;Bottom;Copper Fill127
379;;;56.7182;-39.5957;0;Bottom;Copper Fill39
380;;;1.6256;-45.4377;0;Bottom;Copper Fill162
381;;;63.0936;-16.5579;0;Bottom;Copper Fill256
382;;;51.4604;-6.3979;0;Bottom;Copper Fill269
383;;;23.5491;-2.96335;0;Bottom;Via29
384;;;51.2285;-48.0494;-90;Bottom;TXT19
385;;;31.8008;-24.2541;0;Bottom;Copper Fill62
386;;;24.1808;-24.2541;0;Bottom;Copper Fill59
387;;;97.3328;-3.0324;0;Bottom;Copper Fill296
388;;;93.9673;-3.4769;0;Bottom;Copper Fill159
389;;;56.5277;-10.2079;0;Bottom;Copper Fill327
390;;;73.9493;-5.40915;-90;Bottom;TXT19
391;;;70.9168;-10.6524;0;Bottom;Copper Fill156
392;;;12.9794;-36.5477;0;Bottom;Copper Fill210
393;;;29.4894;-39.9005;0;Bottom;Copper Fill191
394;;;37.0078;-17.8787;0;Bottom;Copper Fill240
395;;;25.9334;-12.0113;0;Bottom;Copper Fill281
396;;;38.9128;-8.8617;0;Bottom;Copper Fill277
397;;;4.191;-2.6133;0;Bottom;Copper Fill93
398;;;91.7956;-12.9511;0;Bottom;Copper Fill89
399;;;53.4924;-26.5401;0;Bottom;Copper Fill94
400;;;95.631;-23.4413;0;Bottom;Copper Fill65
401;;;53.7685;-48.0494;-90;Bottom;TXT19
402;;;35.6141;-12.4884;0;Bottom;Via7
403;;;66.7291;-10.5834;0;Bottom;Via20
404;;;69.4182;-23.6953;0;Bottom;Copper Fill231
405;;;27.7368;-51.4575;0;Bottom;Copper Fill5
406;;;78.1177;-11.4779;0;Bottom;Copper Fill303
407;;;90.5138;-47.7707;0;Bottom;TXT19
408;;;90.5138;-9.65828;0;Bottom;TXT19
409;;;90.5138;-32.4553;0;Bottom;TXT19
410;;;98.7625;-12.5175;0;Bottom;TXT19
411;;;76.64;-47.7896;-90;Bottom;TXT19
412;;;23.0632;-3.0324;0;Bottom;Copper Fill317
413;;;48.0568;-2.372;0;Bottom;Copper Fill336
414;;;37.6317;-7.61951;0;Bottom;TXT6
415;180k;0805 [SMD];52.7591;-6.38318;90;Top;R3
416;;;58.0644;-17.2183;0;Bottom;Copper Fill251
417;330k;0805 [SMD];67.9992;-14.0032;-90;Top;R16
418;;;95.631;-20.9013;0;Bottom;Copper Fill81
419;;;40.2844;-46.7585;0;Bottom;Copper Fill30
420;;;90.5138;-37.5918;0;Bottom;TXT19
421;;;14.6591;-29.6334;0;Bottom;Via35
422;;;23.0632;-7.452;0;Bottom;Copper Fill288
423;;;24.4094;-20.9521;0;Bottom;Copper Fill73
424;;;55.3974;-30.9089;0;Bottom;Copper Fill42
425;;;85.1408;-51.4575;0;Bottom;Copper Fill25
426;;;36.8841;-11.8534;0;Bottom;Via4
427;;;86.1568;-49.2477;0;Bottom;Copper Fill171
428;;;89.8906;-24.3557;0;Bottom;Copper Fill52
429;330k;0805 [SMD];50.2192;-14.0032;-90;Top;R2
430;;;43.5356;-22.1205;0;Bottom;Copper Fill241
431;;;55.7276;-29.4357;0;Bottom;Copper Fill204
432;;;69.0011;-47.7896;-90;Bottom;TXT19
433;;;12.7381;-7.8965;0;Bottom;Copper Fill97
434;;;15.4755;-5.53168;-90;Bottom;TXT20
435;;;12.9587;-5.04509;-90;Bottom;TXT20
436;;;48.5756;-48.0494;-90;Bottom;TXT19
437;;;1.7272;-23.3524;0;Bottom;Copper Fill315
438;;;10.414;-36.2429;0;Bottom;Copper Fill209
439;180k;0805 [SMD];62.9191;-6.38318;90;Top;R11
440;;;77.6732;-11.9224;0;Bottom;Copper Fill119
441;;;90.2208;-23.1111;0;Bottom;Copper Fill66
442;;;60.5536;-16.8627;0;Bottom;Copper Fill254
443;;;62.5094;-49.2985;0;Bottom;Copper Fill34
444;;;23.9268;-7.452;0;Bottom;Copper Fill289
445;;;15.494;-36.8779;0;Bottom;Copper Fill211
446;;;26.0096;-45.4377;0;Bottom;Copper Fill1
447;;;12.7381;-9.5729;0;Bottom;Copper Fill96
448;330k;0805 [SMD];52.7592;-14.0032;-90;Top;R4
449;;;47.6377;-1.9529;0;Bottom;Copper Fill157
450;;;94.0341;-2.96335;0;Bottom;Via26
451;;;90.5138;-24.9968;0;Bottom;TXT19
452;;;29.4149;-47.6956;-90;Bottom;TXT19
453;;;77.4573;-19.9869;0;Bottom;Copper Fill306
454;;;97.7773;-3.4769;0;Bottom;Copper Fill110
455;;;77.4573;-24.1779;0;Bottom;Copper Fill299
456;180k;0805 [SMD];60.3791;-6.38318;90;Top;R9
457;;;97.7773;-3.4769;0;Bottom;Copper Fill294
458;;;70.5391;-10.5834;0;Bottom;Via34
459;;;40.4368;-51.4575;0;Bottom;Copper Fill10
460;;;54.9529;-26.7179;0;Bottom;Copper Fill291
461;;;93.9673;-6.6519;0;Bottom;Copper Fill319
462;;;24.4348;-30.9089;0;Bottom;Copper Fill195
463;;;18.1849;-5.52717;-90;Bottom;TXT20
464;;;53.5432;-18.3613;0;Bottom;Copper Fill249
465;;;73.1266;-49.2985;0;Bottom;Copper Fill168
466;;so014;81.3342;-31.1634;0;Top;IC2
467;;;95.631;-18.3613;0;Bottom;Copper Fill83
468;;;7.8994;-43.9899;0;Bottom;Copper Fill173
469;;;95.3262;-49.2223;0;Bottom;Copper Fill167

View File

@ -8,15 +8,15 @@ G04 CONTOUR ON CENTER OF CONTOUR VECTOR*
%MOIN*%
%OFA0B0*%
%SFA1.0B1.0*%
%ADD10R,4.000010X2.088890X3.984010X2.072890*%
%ADD10R,3.937010X2.088890X3.921010X2.072890*%
%ADD11C,0.008000*%
%LNSILK0*%
G90*
G70*
G54D11*
X4Y2085D02*
X3996Y2085D01*
X3996Y4D01*
X3933Y2085D01*
X3933Y4D01*
X4Y4D01*
X4Y2085D01*
D02*

View File

@ -1,15 +1,15 @@
Part/Designator,Manufacture Part Number
R3,RC0805FR-071KL
R5,RC0805FR-071KL
R4,RC0805JR-0710KL
R6,RC0805JR-0710KL
R7,RC0805JR-0710KL
R9,RC0805JR-0710KL
R11,RC0805JR-0710KL
R13,RC0805JR-0710KL
MAX9926,MAX9926UAEE+T
C2,CC0805KRX7R9BB103
C3,CC0805KKX7R7BB105
C4,CC0805KRX7R9BB102
C5,CC0805KRX7R9BB102
Part/Designator,Manufacture Part Number
R3,RC0805FR-071KL
R5,RC0805FR-071KL
R4,RC0805JR-0710KL
R6,RC0805JR-0710KL
R7,RC0805JR-0710KL
R9,RC0805JR-0710KL
R11,RC0805JR-0710KL
R13,RC0805JR-0710KL
MAX9926,MAX9926UAEE+T
C2,CC0805KRX7R9BB103
C3,CC0805KKX7R7BB105
C4,CC0805KRX7R9BB102
C5,CC0805KRX7R9BB102
C1,CC0805ZRY5V9BB104
1 Part/Designator Manufacture Part Number
2 R3 RC0805FR-071KL
3 R5 RC0805FR-071KL
4 R4 RC0805JR-0710KL
5 R6 RC0805JR-0710KL
6 R7 RC0805JR-0710KL
7 R9 RC0805JR-0710KL
8 R11 RC0805JR-0710KL
9 R13 RC0805JR-0710KL
10 MAX9926 MAX9926UAEE+T
11 C2 CC0805KRX7R9BB103
12 C3 CC0805KKX7R7BB105
13 C4 CC0805KRX7R9BB102
14 C5 CC0805KRX7R9BB102
15 C1 CC0805ZRY5V9BB104

View File

@ -1,8 +1,8 @@
Part/Designator,Manufacture Part Number,Quantity
"R3,R5",RC0805FR-071KL,2
"R4,R6,R7,R9,R11,R13",RC0805JR-0710KL,6
MAX9926,MAX9926UAEE+T,1
C2,CC0805KRX7R9BB103,1
C3,CC0805KKX7R7BB105,1
"C4,C5",CC0805KRX7R9BB102,2
Part/Designator,Manufacture Part Number,Quantity
"R3,R5",RC0805FR-071KL,2
"R4,R6,R7,R9,R11,R13",RC0805JR-0710KL,6
MAX9926,MAX9926UAEE+T,1
C2,CC0805KRX7R9BB103,1
C3,CC0805KKX7R7BB105,1
"C4,C5",CC0805KRX7R9BB102,2
C1,CC0805ZRY5V9BB104,1
1 Part/Designator Manufacture Part Number Quantity
2 R3,R5 RC0805FR-071KL 2
3 R4,R6,R7,R9,R11,R13 RC0805JR-0710KL 6
4 MAX9926 MAX9926UAEE+T 1
5 C2 CC0805KRX7R9BB103 1
6 C3 CC0805KKX7R7BB105 1
7 C4,C5 CC0805KRX7R9BB102 2
8 C1 CC0805ZRY5V9BB104 1

View File

@ -1 +1 @@
Part/Designator,Manufacture Part Number,Quantity C16,T356G106K035AT,1 "C1,C3,C5,C7,C9,C13,C15",C322C104M5R5TA7301,7 C14,T356F476K006AT,1 C18,AR215F334K4R,1 C19,C317C103K5R5TA,1 "C11,C12,C20",CC0805KKX7R7BB105,3 C23,C317C472K1R5TA,1 "C2,C4,C6,C8,C24,C10",CL21B224KOCNNNC,6 ,Quantity ,Quantity ,Quantity "D15,D17",1N5818-TP,2 "LED1,LED2,LED3,LED4,LED5,LED6,LED7,LED8",LTL-4221N,8 "D9,D10,D11,D12",1N4004-TP,4 ,Quantity ,Quantity C18,AR215F334K4R,1 ,, Jumpers for male pins,969102-0000-DA,5 "JP1,JP2,JP3",M20-9990345,3 "JP4,JP5",M20-9990245,2 J4,3020-40-0100-00,1 IC3,PPPC041LFBN-RC,2 ,, "Q1,Q2,Q3,Q4,Q5,Q6,Q7,Q8",STP62NS04Z,8 ,Quantity R54,MFR-25FBF52-10K,1 "R10,R13,R16,R19,R23,R24,R29,R30,R39,R40,R50,R51,R57,R58",MFR-25FBF52-1K,14 C16,T356G106K035AT,1 C14,T356F476K006AT,1 C16,T356G106K035AT,1 C18,AR215F334K4R,1 "R1,R3,R61",RT0805BRD072K49L,3 R7,RC0805FR-073K9L,1 R21,MFP-25BRD52-1K,1 "R11,R14,R17,R20,R35,R36,R37,R38,R48,R49,R55,R56",MFR-25FBF52-100K,12 "R25,R27,R31,R32",FMP200JR-52-180R,4 "R59,R60",RC0805FR-071KL,2 ,, U1,LM2940T-5.0/NOPB,1 MPX4250A,MPX4250AP,1 "IC1,IC2",TC4424EPA,2 "C1,C3,C5,C7,C9,C13,C15",C322C104M5R5TA7301,7 C18,AR215F334K4R,1 ,,3
Part/Designator,Manufacture Part Number/Seeed SKU,Quantity C16,T356G106K035AT,1 "C1,C3,C5,C7,C9,C13,C15",C322C104M5R5TA7301,7 C23,C317C472K1R5TA,1 "C7,C9",08055C104KAT2A,2 C14,T356F476K006AT,1 C18,AR215F334K4R,1 C19,C317C103K5R5TA,1 "C11,C12,C20",CC0805KKX7R7BB105,3 C23,C317C472K1R5TA,1 "C2,C4,C6,C8,C24,C10",CL21B224KOCNNNC,6 ,Quantity ,Quantity "D15,D17",1N5818-TP,2 "LED1,LED2,LED3,LED4,LED5,LED6,LED7,LED8",LTL-4221N,8 "D9,D10,D11,D12",1N4004-TP,4 ,Quantity C18,AR215F334K4R,1 Jumpers for male pins,969102-0000-DA,5 "JP1,JP2,JP3",M20-9990345,3 "JP4,JP5",M20-9990245,2 J4,3020-40-0100-00,1 IC3,PPPC041LFBN-RC,2 C14,T356F476K006AT,1 R54,MFR-25FBF52-10K,1 "R10,R13,R16,R19,R23,R24,R29,R30,R39,R40,R50,R51,R57,R58",MFR-25FBF52-1K,14 C14,T356F476K006AT,1 ,Quantity C14,T356F476K006AT,1 C16,T356G106K035AT,1 "R1,R3,R26,R28,R33,R34,R61",RT0805BRD072K49L,7 R7,RC0805FR-073K9L,1 R21,MFP-25BRD52-1K,1 "R11,R14,R17,R20,R35,R36,R37,R38,R48,R49,R55,R56",MFR-25FBF52-100K,12 "R25,R27,R31,R32",FMP200JR-52-180R,4 "R59,R60",RC0805FR-071KL,2 R62,RC0805FR-07120RL,1 U1,LM2940T-5.0/NOPB,1 MPX4250A,MPX4250AP,1 "IC1,IC2",TC4424EPA,2 C14,T356F476K006AT,1 C18,AR215F334K4R,1
Can't render this file because it contains an unexpected character in line 1 and column 71.

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 370 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 490 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 474 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 382 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 930 KiB

View File

@ -302,9 +302,9 @@ void integerPID::SetSampleTime(int NewSampleTime)
if (NewSampleTime > 0)
{
unsigned long ratioX1000 = (unsigned long)(NewSampleTime * 1000) / (unsigned long)SampleTime;
ki = (ki * ratioX1000) / 1000;
ki = ((unsigned long)ki * ratioX1000) / 1000;
//kd /= ratio;
kd = (kd * 1000) / ratioX1000;
kd = ((unsigned long)kd * 1000) / ratioX1000;
SampleTime = (unsigned long)NewSampleTime;
}
}
@ -387,3 +387,196 @@ byte integerPID::GetKi(){ return dispKi;}
byte integerPID::GetKd(){ return dispKd;}
int integerPID::GetMode(){ return inAuto ? AUTOMATIC : MANUAL;}
int integerPID::GetDirection(){ return controllerDirection;}
//************************************************************************************************************************
#define PID_P_FACTOR 128
#define PID_I_FACTOR 1024
#define PID_D_FACTOR 128
/*Constructor (...)*********************************************************
* The parameters specified here are those for for which we can't set up
* reliable defaults, so we need to have the user set them.
***************************************************************************/
integerPIDnew::integerPIDnew(long* Input, long* Output, long* Setpoint,
byte Kp, byte Ki, byte Kd, byte ControllerDirection)
{
myOutput = Output;
myInput = (long*)Input;
mySetpoint = Setpoint;
inAuto = false;
integerPIDnew::SetOutputLimits(0, 255); //default output limit corresponds to
//the arduino pwm limits
SampleTime = 50; //default Controller Sample Time is 0.05 seconds
integerPIDnew::SetControllerDirection(ControllerDirection);
integerPIDnew::SetTunings(Kp, Ki, Kd);
lastTime = millis()-SampleTime;
}
/* Compute() **********************************************************************
* This, as they say, is where the magic happens. this function should be called
* every time "void loop()" executes. the function will decide for itself whether a new
* pid Output needs to be computed. returns true when the output is computed,
* false when nothing has been done.
**********************************************************************************/
bool integerPIDnew::Compute()
{
if(!inAuto) return false;
unsigned long now = millis();
//SampleTime = (now - lastTime);
unsigned long timeChange = (now - lastTime);
if(timeChange >= SampleTime)
{
/*Compute all the working error variables*/
long input = *myInput;
long error = (*mySetpoint - input) * 100; //Error is multiplied by 100 in order to allow use of 0-100% rather than 0-1
ITerm += (ki * error)/PID_I_FACTOR; //Note that ki is multiplied by 1024 to avoid floats. It is divided back here AFTER being multiplied by error
if(ITerm > outMax) { ITerm = outMax; }
else if(ITerm < outMin) { ITerm = outMin; }
long dInput = (input - lastInput);
/*Compute PID Output*/
long output = (kp * error)/100 + ITerm - (kd * dInput)/100; //100 is used to allow 0-100% rather than 0-1
if(output > outMax) output = outMax;
else if(output < outMin) output = outMin;
*myOutput = output;
/*Remember some variables for next time*/
lastInput = input;
lastTime = now;
return true;
}
else return false;
}
/* SetTunings(...)*************************************************************
* This function allows the controller's dynamic performance to be adjusted.
* it's called automatically from the constructor, but tunings can also
* be adjusted on the fly during normal operation
******************************************************************************/
void integerPIDnew::SetTunings(byte Kp, byte Ki, byte Kd)
{
if (Kp<0 || Ki<0 || Kd<0) return;
if ( dispKp == Kp && dispKi == Ki && dispKd == Kd ) return; //Only do anything if one of the values has changed
dispKp = Kp; dispKi = Ki; dispKd = Kd;
/*
double SampleTimeInSec = ((double)SampleTime)/1000;
kp = Kp;
ki = Ki * SampleTimeInSec;
kd = Kd / SampleTimeInSec;
*/
long InverseSampleTimeInSec = 1000 / SampleTime;
kp = Kp;
ki = (long)((long)Ki * PID_I_FACTOR) / InverseSampleTimeInSec;
kd = (long)Kd * InverseSampleTimeInSec;
if(controllerDirection == REVERSE)
{
kp = (0 - kp);
ki = (0 - ki);
kd = (0 - kd);
}
}
/* SetSampleTime(...) *********************************************************
* sets the period, in Milliseconds, at which the calculation is performed
******************************************************************************/
void integerPIDnew::SetSampleTime(int NewSampleTime)
{
if (SampleTime == (unsigned long)NewSampleTime) return; //If new value = old value, no action required.
if (NewSampleTime > 0)
{
unsigned long ratioX1000 = (unsigned long)(NewSampleTime * 1000) / (unsigned long)SampleTime;
ki = ((unsigned long)ki * ratioX1000) / 1000;
//kd /= ratio;
kd = ((unsigned long)kd * 1000) / ratioX1000;
SampleTime = (unsigned long)NewSampleTime;
}
}
/* SetOutputLimits(...)****************************************************
* This function will be used far more often than SetInputLimits. while
* the input to the controller will generally be in the 0-1023 range (which is
* the default already,) the output will be a little different. maybe they'll
* be doing a time window and will need 0-8000 or something. or maybe they'll
* want to clamp it from 0-125. who knows. at any rate, that can all be done
* here.
**************************************************************************/
void integerPIDnew::SetOutputLimits(long Min, long Max)
{
if(Min >= Max) return;
outMin = Min;
outMax = Max;
if(inAuto)
{
if(*myOutput > outMax) *myOutput = outMax;
else if(*myOutput < outMin) *myOutput = outMin;
if(ITerm > outMax) ITerm= outMax;
else if(ITerm < outMin) ITerm= outMin;
}
}
/* SetMode(...)****************************************************************
* Allows the controller Mode to be set to manual (0) or Automatic (non-zero)
* when the transition from manual to auto occurs, the controller is
* automatically initialized
******************************************************************************/
void integerPIDnew::SetMode(int Mode)
{
bool newAuto = (Mode == AUTOMATIC);
if(newAuto == !inAuto)
{ /*we just went from manual to auto*/
integerPIDnew::Initialize();
}
inAuto = newAuto;
}
/* Initialize()****************************************************************
* does all the things that need to happen to ensure a bumpless transfer
* from manual to automatic mode.
******************************************************************************/
void integerPIDnew::Initialize()
{
ITerm = *myOutput;
lastInput = *myInput;
if(ITerm > outMax) ITerm = outMax;
else if(ITerm < outMin) ITerm = outMin;
}
/* SetControllerDirection(...)*************************************************
* The PID will either be connected to a DIRECT acting process (+Output leads
* to +Input) or a REVERSE acting process(+Output leads to -Input.) we need to
* know which one, because otherwise we may increase the output when we should
* be decreasing. This is called from the constructor.
******************************************************************************/
void integerPIDnew::SetControllerDirection(byte Direction)
{
if(inAuto && Direction !=controllerDirection)
{
kp = (0 - kp);
ki = (0 - ki);
kd = (0 - kd);
}
controllerDirection = Direction;
}
/* Status Funcions*************************************************************
* Just because you set the Kp=-1 doesn't mean it actually happened. these
* functions query the internal state of the PID. they're here for display
* purposes. this are the functions the PID Front-end uses for example
******************************************************************************/
byte integerPIDnew::GetKp(){ return dispKp; }
byte integerPIDnew::GetKi(){ return dispKi;}
byte integerPIDnew::GetKd(){ return dispKd;}
int integerPIDnew::GetMode(){ return inAuto ? AUTOMATIC : MANUAL;}
int integerPIDnew::GetDirection(){ return controllerDirection;}

View File

@ -15,9 +15,9 @@ class PID
#define REVERSE 1
//commonly used functions **************************************************************************
PID(long*, long*, long*, // * constructor. links the PID to the Input, Output, and
PID(long*, long*, long*, // * constructor. links the PID to the Input, Output, and
byte, byte, byte, byte); // Setpoint. Initial tuning parameters are also set here
void SetMode(int Mode); // * sets PID to either Manual (0) or Auto (non-0)
bool Compute(); // * performs the PID calculation. it should be
@ -28,47 +28,47 @@ class PID
void SetOutputLimits(long, long); //clamps the output to a specific range. 0-255 by default, but
//it's likely the user will want to change this depending on
//the application
//available but not commonly used functions ********************************************************
void SetTunings(byte, byte, // * While most users will set the tunings once in the
void SetTunings(byte, byte, // * While most users will set the tunings once in the
byte); // constructor, this function gives the user the option
// of changing tunings during runtime for Adaptive control
void SetControllerDirection(byte); // * Sets the Direction, or "Action" of the controller. DIRECT
// means the output will increase when error is positive. REVERSE
// means the opposite. it's very unlikely that this will be needed
// once it is set in the constructor.
void SetSampleTime(int); // * sets the frequency, in Milliseconds, with which
void SetSampleTime(int); // * sets the frequency, in Milliseconds, with which
// the PID calculation is performed. default is 100
//Display functions ****************************************************************
byte GetKp(); // These functions query the pid for interal values.
byte GetKi(); // they were created mainly for the pid front-end,
byte GetKd(); // where it's important to know what is actually
byte GetKd(); // where it's important to know what is actually
int GetMode(); // inside the PID.
int GetDirection(); //
private:
void Initialize();
byte dispKp; // * we'll hold on to the tuning parameters in user-entered
byte dispKp; // * we'll hold on to the tuning parameters in user-entered
byte dispKi; // format for display purposes
byte dispKd; //
byte kp; // * (P)roportional Tuning Parameter
byte ki; // * (I)ntegral Tuning Parameter
byte kd; // * (D)erivative Tuning Parameter
byte ki; // * (I)ntegral Tuning Parameter
byte kd; // * (D)erivative Tuning Parameter
int controllerDirection;
long *myInput; // * Pointers to the Input, Output, and Setpoint variables
long *myOutput; // This creates a hard link between the variables and the
long *myOutput; // This creates a hard link between the variables and the
long *mySetpoint; // PID, freeing the user from having to constantly tell us
// what these values are. with pointers we'll just know.
unsigned long lastTime;
long ITerm, lastInput;
@ -90,9 +90,9 @@ class integerPID
#define REVERSE 1
//commonly used functions **************************************************************************
integerPID(long*, long*, long*, // * constructor. links the PID to the Input, Output, and
integerPID(long*, long*, long*, // * constructor. links the PID to the Input, Output, and
byte, byte, byte, byte); // Setpoint. Initial tuning parameters are also set here
void SetMode(int Mode); // * sets PID to either Manual (0) or Auto (non-0)
bool Compute(); // * performs the PID calculation. it should be
@ -103,47 +103,122 @@ class integerPID
void SetOutputLimits(long, long); //clamps the output to a specific range. 0-255 by default, but
//it's likely the user will want to change this depending on
//the application
//available but not commonly used functions ********************************************************
void SetTunings(byte, byte, // * While most users will set the tunings once in the
void SetTunings(byte, byte, // * While most users will set the tunings once in the
byte); // constructor, this function gives the user the option
// of changing tunings during runtime for Adaptive control
void SetControllerDirection(byte); // * Sets the Direction, or "Action" of the controller. DIRECT
// means the output will increase when error is positive. REVERSE
// means the opposite. it's very unlikely that this will be needed
// once it is set in the constructor.
void SetSampleTime(int); // * sets the frequency, in Milliseconds, with which
void SetSampleTime(int); // * sets the frequency, in Milliseconds, with which
// the PID calculation is performed. default is 100
//Display functions ****************************************************************
byte GetKp(); // These functions query the pid for interal values.
byte GetKi(); // they were created mainly for the pid front-end,
byte GetKd(); // where it's important to know what is actually
byte GetKd(); // where it's important to know what is actually
int GetMode(); // inside the PID.
int GetDirection(); //
private:
void Initialize();
byte dispKp; // * we'll hold on to the tuning parameters in user-entered
byte dispKp; // * we'll hold on to the tuning parameters in user-entered
byte dispKi; // format for display purposes
byte dispKd; //
int kp; // * (P)roportional Tuning Parameter
int ki; // * (I)ntegral Tuning Parameter
int kd; // * (D)erivative Tuning Parameter
uint16_t kp; // * (P)roportional Tuning Parameter
uint16_t ki; // * (I)ntegral Tuning Parameter
uint16_t kd; // * (D)erivative Tuning Parameter
int controllerDirection;
long *myInput; // * Pointers to the Input, Output, and Setpoint variables
long *myOutput; // This creates a hard link between the variables and the
long *myOutput; // This creates a hard link between the variables and the
long *mySetpoint; // PID, freeing the user from having to constantly tell us
// what these values are. with pointers we'll just know.
unsigned long lastTime;
long ITerm, lastInput;
unsigned long SampleTime;
long outMin, outMax;
bool inAuto;
};
class integerPIDnew
{
public:
//Constants used in some of the functions below
#define AUTOMATIC 1
#define MANUAL 0
#define DIRECT 0
#define REVERSE 1
//commonly used functions **************************************************************************
integerPIDnew(long*, long*, long*, // * constructor. links the PID to the Input, Output, and
byte, byte, byte, byte); // Setpoint. Initial tuning parameters are also set here
void SetMode(int Mode); // * sets PID to either Manual (0) or Auto (non-0)
bool Compute(); // * performs the PID calculation. it should be
// called every time loop() cycles. ON/OFF and
// calculation frequency can be set using SetMode
// SetSampleTime respectively
void SetOutputLimits(long, long); //clamps the output to a specific range. 0-255 by default, but
//it's likely the user will want to change this depending on
//the application
//available but not commonly used functions ********************************************************
void SetTunings(byte, byte, // * While most users will set the tunings once in the
byte); // constructor, this function gives the user the option
// of changing tunings during runtime for Adaptive control
void SetControllerDirection(byte); // * Sets the Direction, or "Action" of the controller. DIRECT
// means the output will increase when error is positive. REVERSE
// means the opposite. it's very unlikely that this will be needed
// once it is set in the constructor.
void SetSampleTime(int); // * sets the frequency, in Milliseconds, with which
// the PID calculation is performed. default is 100
//Display functions ****************************************************************
byte GetKp(); // These functions query the pid for interal values.
byte GetKi(); // they were created mainly for the pid front-end,
byte GetKd(); // where it's important to know what is actually
int GetMode(); // inside the PID.
int GetDirection(); //
private:
void Initialize();
byte dispKp; // * we'll hold on to the tuning parameters in user-entered
byte dispKi; // format for display purposes
byte dispKd; //
uint16_t kp; // * (P)roportional Tuning Parameter
uint16_t ki; // * (I)ntegral Tuning Parameter
uint16_t kd; // * (D)erivative Tuning Parameter
int controllerDirection;
long *myInput; // * Pointers to the Input, Output, and Setpoint variables
long *myOutput; // This creates a hard link between the variables and the
long *mySetpoint; // PID, freeing the user from having to constantly tell us
// what these values are. with pointers we'll just know.
unsigned long lastTime;
long ITerm, lastInput;
@ -152,4 +227,3 @@ class integerPID
bool inAuto;
};
#endif