从昆明市区沿盘龙江向北走大约二十公里,到松华乡附近,路会在一面混凝土墙面前停下来。这道墙高六十二米,顶部长两百米出头,横在盘龙江河谷里,背后是一大片水面。墙是松华坝水库的主坝,水面是这座水库拦截盘龙江上游来水后形成的人工湖。从坝顶公路经过时,车窗一侧是延伸向远方的湖面,另一侧是向下切入河谷的深壑,两种地形的对立在这里被压缩到几十米宽的坝顶距离内。
站在坝前能看到两样东西:坝体上方宽阔的水面和坝下变窄的河道。这两样放在一起,就是这座水库最直接的读法。它把盘龙江的径流在上游拦住了。盘龙江是滇池最大的入湖河流,松华坝截流之后,滇池得到的水量就少了。一座水库在这里充当了两个水系的开关。往上是昆明人的饮用水源,往下是被掐断补给的历史大湖。
谷口的一道闸
盘龙江发源于嵩明县梁王山,向南流经昆明市区,最终汇入滇池。这条河是滇池最主要的天然补给来源,多年平均径流量约两亿立方米。在松华坝修建之前,盘龙江上游的牧羊河和冷水河在松华山麓汇合后,径流充沛地注入盘龙江干道,全年不断。每年雨季,洪水携带着泥沙沿河谷直下,是维系滇池水量平衡的关键通道。
1958 年 11 月,昆明在这里动工修建水库。两年后竣工时,一座黏土斜墙坝把盘龙江河谷拦腰截断。黏土斜墙坝是一种用黏土做核心防渗层、外部堆石或土料加固的大坝类型,在那个年代是中国水利工程最常见的选择。工程的规模在大跃进时期的水利建设中不算最大,但它选的位置非常关键,刚好卡在盘龙江上游三条支流汇合后的瓶颈处。1995 年加固扩建后,水库总库容达到 2.19 亿立方米。正常蓄水位对应的水面面积约八平方公里,回水长度超过十六公里。这座水库属于"多年调节水库":可以把丰水年多余的水存起来,供枯水年使用,使供水不随季节大幅波动。
这个位置的选择不是 1958 年才做出来的。事实上,同一个地点在六百八十年前就被人选中了。元至元十三年(1276 年),云南行省平章政事赛典赤·赡思丁和劝农使张立道在这里修筑了松华坝,目的是分减盘龙江的洪峰、减轻滇池沿岸的洪灾。那座坝是土木结构的,用木桩和黏土建造,需要每年修葺。明代万历年间改为石闸,用巨型方木做闸门。1945 年,民国云南省政府又在松华坝上游七公里的芹菜冲修建了谷昌坝,时为全省最大的砌石溢流重力坝。
1958 年的新坝把所有这些历史的坝都埋在了水下。谷昌坝完全沉入库底,只在每年枯水期水位下降后才短暂露出水面,2009 年被盘龙区列为挂牌保护文物,成为昆明第一个"水下文物"。当时昆明日报的记者在报道中描述,水库扩容蓄水后,谷昌坝变成了"时隐时现"的遗迹,蓄水期完全看不见,退水后才显露出石砌坝体和当年安装的阀门。

一碗水的代价
1990 年代以后,松华坝水库的功能发生了一次根本转变。最初是为防洪和农业灌溉修建的,2003 年停止农业供水,完全转为昆明主城的饮用水源地。今天这座水库平均每天向昆明供应约三十万吨水,占主城区自来水供应量约六成。昆明人常把这座水库称为头上的"一碗水"。
这碗水的代价,是下游水量的减少。盘龙江在松华坝以下河段,天然径流被截走大部分,河道流量受人工调度控制。建库前盘龙江的天然径流支撑了整条河道的生态和农业用水,如今河道大部分时间只靠水库放水和沿途城市排水维持。河流曾经是昆明最重要的航运通道,元代以来就是城市的中轴线,现在它的流量已经不足以支撑任何船只通航。从松华坝到滇池入口约二十六公里,沿线城市污水和再生水的排入超过了天然径流,盘龙江变成了一条以再生水和雨水为主的景观河道。
滇池从"五百里"缩小到约三百一十平方公里,原因不止一个。围湖造田直接减少了湖面面积,城市地面硬化减少了雨水入渗补给,气候波动也带来影响。但松华坝截走盘龙江上游来水,是让滇池少了一个最重要的天然水量来源。这座水库把盘龙江从滇池的水源变成了一个被人工控制的水龙头。
松华坝的供水量和滇池水位之间有一个可以用数据追踪的关系。水库多年平均每年向城市供水约一点四亿立方米,这相当于盘龙江天然径流的七成左右。被截走的水量越多,滇池从盘龙江得到的自然补给就越少。滇池水位下降的直接后果之一是草海和外海的连通性降低,水体交换减弱,蓝藻暴发的频率在 1990 年代后明显上升。松华坝不是滇池水质恶化的唯一原因,但它在水量层面的作用被环保讨论长期低估了。

六百八十年的水利层
松华坝水库最有趣的地方,不是它本身的工程规模,而是它在同一个地点叠压了三个不同时代的水利思维。
元代至元年间,云南首任平章政事赛典赤·赡思丁主持筑坝,目标是分洪,把盘龙江夏季暴涨的洪水引开,保护滇池边上的农田和城郭。明代朱芹改石闸,用犬牙相制的石构件和灌铅铁扣合技术加固坝体,模仿的是运河水闸的工程逻辑。1945 年的谷昌坝,用纯石砌筑,一万四千立方米石方,花了九亿元法币,防洪为主、灌溉为辅。这三种水利思维的共同点是"控制洪水,不储存洪水"。水是季风带来的麻烦,需要被分流和引导,而不是被囤积。
1958 年的水库彻底改变了这个逻辑。它不是在旧坝基础上的修缮,而是建一座更大的坝、存更多的水,把盘龙江上游来水的分配权从"自然径流"移到了"人工调度"。大坝主体为黏土斜墙坝,泄洪洞和输水洞布置在主坝左岸,最大泄洪能力每秒一百立方米。左岸还有溢洪道,堰顶高程与正常蓄水位平齐,最大泄流量可达每秒五百五十立方米。这套工程设施确保水库既能尽量多蓄水,又能在极端洪水时安全泄洪。这个转变对应着昆明城市规模的一次跳跃。1950 年代昆明人口不到一百万,到今天主城区常住人口超过五百万,城市用水量翻了数倍。松华坝供水的比例越来越高,盘龙江留给下游的水就越来越少。这个转变在数字上可以量化:水库扩容前蓄水库容约六千万立方米,1995 年加固扩建后提升到一点零五亿立方米,几乎翻倍。

昆明市在 1981 年就划定了松华坝水源保护区,总面积约六百三十平方公里,南北长三十六公里。2009 年盘龙区托管了原属嵩明县的滇源、阿子营两镇,实现了水源区的"一区一源"管理。所谓"一区一源",就是整座水源由一个行政区统一管辖,避免跨区扯皮的治理模式。此后十年,盘龙区在水源区累计投入近五十亿元生态资金。
在水库库区,水源保护的痕迹随处可见。2009 年盘龙区托管了原属嵩明县的滇源、阿子营两镇,实现了水源区的"一区一源"管理。所谓"一区一源",就是整座水源由一个行政区统一管辖,避免跨区扯皮的治理模式。2010 年以后陆续投入近五十亿元生态资金,实施退耕还林、雨污分流、建设村庄污水处理设施。今天水源区内 284 个自然村已有 264 套污水处理设施,水库水质近五年保持在 II 类以上。
这些投入让水库变成了一座被严格管理的巨型装置。沿水库的道路两旁铁丝围栏和监控探头密集分布,警示牌写着"饮用水源一级保护区,禁止进入"。湖面平静,水质清澈,但这不是自然状态的水体。它是经过生态治理、污水截流、入库河流全程监控之后的结果。
上游的工笔与下游的写意
松华坝水库和下游滇池的关系,可以用一种视觉对比来读。水库这边是精细管理的人工工程:混凝土坝体、泄洪洞、输水管道、电站、水质监测站、铁丝围栏、二十四小时监控。滇池那边是水量被削减后重新形成的水面:蓝藻、湿地公园、景观步道、亲水平台。在中间,盘龙江以一条城市河道的身份穿过昆明市区,把两种水景连接起来。
水库上游的牧羊河和冷水河流域,总长约五十公里,十多年前还会因为雨季面源污染导致入库水质降到 IV 类。盘龙区的铁冲村在 2010 年启动生态清洁小流域治理,建成了云南省的示范工程。雨污分流改造后出口水质常年保持 II 类。甸头村三个村小组一千多人的生活污水实现了 100% 收集处理。上游做的是加法:截住污染,净化之后才允许流入水库。
下游做的是减法:水量减少之后,盘龙江在市区段的河面比历史上窄了很多。得胜桥一带是元代以来的昆明中轴线,桥下盘龙江的宽度在今天看来更像一条城市排洪渠而不是一条可以行船的河流。这条河的航运功能从盘龙江历史上完全消失了。

什么时候来看
到松华坝水库不需要进入管理区。沿去松华乡的路行驶,在水库南侧的路边就能看到大坝的上游面和水库水面。遇到天气晴朗的日子,水面倒映着蓝天和周围的青山,看起来像一座天然湖泊,只有走近了看到混凝土坝体和泄洪闸门,才会意识到它的人工属性。最佳季节是每年 3 到 5 月的枯水期,这时水位较低,大坝的轮廓更清晰,沉在水下的谷昌坝也有机会露出部分结构。水库距市中心约二十公里,没有直达公交,需要自驾或打车。
水源保护区管理的严格程度近年来逐年提高。2025 年昆明市生态环境局的数据显示,保护区 14 个点位的水质连续五年保持 II 类以上。铁丝围栏和警示牌覆盖了库周大部分区域,不要翻越。
如果想把松华坝放在更大的脉络里读,可以配合昆明同机制的其他目的地一起看。先到大观楼看滇池缩小后的湖面,再到得胜桥看被截流后的盘龙江,最后到松华坝看截流的源头。这条线把"滇池为什么缩小"这个问题的三块拼图拼在一起:上游截水(松华坝)、围湖造田(东风坝)、景观化修复(盘龙江沿岸步道)。
如果去现场,带五个问题
第一,站在坝前看水面和坝下河道:这两个视觉对比告诉你什么? 上游宽阔的水面和下游变窄的河道之间,隔着一道混凝土墙。这道墙的存在,让自然径流变成了人工调度。
第二,沿着库区道路走,能看到多少水源保护的痕迹? 铁丝围栏、监控探头、警示牌、污水处理站、水质监测点。这些设施加起来告诉你一件事:这座水库不是自然水体,是一套管理系统的终端。
第三,枯水期来的时候,注意看看水面有没有露出什么建筑? 那是谷昌坝遗址,一座比松华坝早建十三年的砌石重力坝。两座坝的上下关系,就是昆明水利史的空间剖面。
第四,回到市区盘龙江边,得胜桥下的水量是多少? 和上游水库的蓄水量对比,体会一座水库如何通过一根管道改变了整座城市的河流面貌。
第五,大观楼上的长联写着"五百里滇池奔来眼底":现在到了滇池边,看看湖面还剩多少? 这道题不需要用数据回答,站在湖边目测就够了。松华坝不是滇池萎缩的唯一原因,但它是最接近开关的那一个。